关于asp.net-mvc–如何检查MVCcshtml页面中的调试模式和asp.netmvcview的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于ASP.NETMVC:如何在MVC应用程
关于asp.net-mvc – 如何检查MVC cshtml页面中的调试模式和asp.net mvc view的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于ASP.NET MVC:如何在MVC应用程序中使用静态HTML页面?、asp.net-mvc – Angular ng-include cshtml页面、asp.net-mvc – asp.net mvc 4 – 谁调用_ViewStart.cshtml和什么步骤的顺序、asp.net-mvc – ASP.NET MVC 4在调试模式下捆绑js文件等相关知识的信息别忘了在本站进行查找喔。
本文目录一览:- asp.net-mvc – 如何检查MVC cshtml页面中的调试模式(asp.net mvc view)
- ASP.NET MVC:如何在MVC应用程序中使用静态HTML页面?
- asp.net-mvc – Angular ng-include cshtml页面
- asp.net-mvc – asp.net mvc 4 – 谁调用_ViewStart.cshtml和什么步骤的顺序
- asp.net-mvc – ASP.NET MVC 4在调试模式下捆绑js文件
asp.net-mvc – 如何检查MVC cshtml页面中的调试模式(asp.net mvc view)
@{ bool isRelease = false;
#if DEBUG
isRelease = false;
#else
isRelease = true;
#endif
} @{ if(isRelease) { < p > result1 < /p > } else { < p > result2 < /p >} }
应用程序显示“结果2”但必须显示“结果1”
解决方法
HttpContext.IsDebuggingEnabled
要么
HttpContext.Current.IsDebuggingEnabled
参考:
IsDebuggingEnabled
ASP.NET MVC:如何在MVC应用程序中使用静态HTML页面?
想法?建议?
解决方法
不过,我非常非常警惕,允许用户生成的内容以原始HTML上传的形式,因为您正在离开非常宽敞的门。最好的是,你将会满足人们的垃圾邮件/色情/广告页面。最糟糕的是,您将为人们提供上传跨站点脚本攻击的渠道,并可能上传恶意内容来破坏您的网站。您可以轻松地将现有的表单存储在您的网站上,将一堆垃圾硬编码到其中,并将其从主页中删除,并打破整个事物。
至少您应该解析上传的内容,将其减少到一小段内容,然后将其包装在您自己的内容中。我个人更倾向于向用户提供一个好的所见即所得编辑器来编辑单一内容 – 任何值得它的盐的编辑应该为您提供关于它包含/不包括哪些元素的消毒。然后将此内容片段存储在数据库/光盘上,并通过标准MVC控制器路由请求主页,并加载该内容。
编辑 – 为您请求示例
您应该能够向路由添加一个忽略规则 – 可能已经有这些示例已经破解打开了Global.asax文件 – 您将要调用route.IgnoreRoute方法:
routes.IgnoreRoute("UserPages/{*path}");
应该让IIS处理对yourwebsite.com/UserPages/aUser/homepage.html的所有请求 – 您还可以使用通配符片段/约束更漂亮的解决方案
asp.net-mvc – Angular ng-include cshtml页面
这是我的主要观点:
<div> <div> <div> <div ng-include="Home/Template/login"></div> </div> </div> </div> <div> <div ng-view></div> </div>
这里是我的部分Login.cshtml:
<form name="login" ng-controller="LoginCtrl"> <div><input type="text" name="loginName"placeholder="Brugernavn" oninvalid="this.setCustomValidity('Indtast brugernavn')" ng-model="UserData.LoginName" ng-required="true"></div> <div><input type="text" name="password"placeholder="Kodeord" oninvalid="this.setCustomValidity('Indtast kodeord')" ng-model="UserData.Password" ng-required="true"></div> <div> <buttonng-click="Login()" ng-disabled="login.password.$error.required || login.loginName.$error.required">Login</button> </div> </form>
im使用mvc返回特定部分视图对网址的调用,如下所示:
public ActionResult Template(string id) { switch (id.ToLower()) { case "login": return PartialView("~/Views/Account/Partials/Login.cshtml"); case "register": return PartialView("~/Views/Account/Partials/Register.cshtml"); case "main": return PartialView("~/Views/Main/MainPage.cshtml"); default: throw new Exception("template not kNown"); } }
基本上我会相信ng-include应该调用url,它将返回到页面上将被粘贴的html.但是这不是什么发生,Template方法根本没有被调用.我可以在主页上包含整个模板,但是在登录后,我想用登录的用户数据模板替换此模板.
任何想法如何解决这个问题?
解决方法@H_301_20@
ng-include会计算一个表达式,确保您正在寻找直接加载路径,使用两组引号.
<div ng-include="'Home/Template/login'"></div>
<div ng-include="'Home/Template/login'"></div>
asp.net-mvc – asp.net mvc 4 – 谁调用_ViewStart.cshtml和什么步骤的顺序
解决方法
所以“谁”将是RazorViewEngine及其相应的RazorView类(包括他们的基类).为了得到一个很好的概述MVC请求管道我推荐这个 pdf.
asp.net-mvc – ASP.NET MVC 4在调试模式下捆绑js文件
出于某种原因,所有css和js文件都以调试模式捆绑在一起.它开始于几天前.我们有一个拥有多个开发人员的大型团队,很难找到过去几天发生了哪些变化,因为有多个变更提交到存储库.但是我没有在BundleConfig和Global.asax.cs中发现任何重大变化.
当应用程序在调试模式下运行时,BundleTable.EnableOptimizations返回false.
据我所知,当debug设置为true时,捆绑不会发生.
< compilation debug =“true”targetFramework =“4.5”>
到目前为止,我还没有在Google上发现过这个问题.这是一个非常独特的问题吗?
理想情况下,我想修复它而不是解决方法.找到原因是这里的实际问题.任何关于我应该开始寻找修复的指针都将不胜感激.谢谢.
编辑:我的问题与ASP.NET MVC 4 app with bundling and minification,why is minification enabled in debug mode?相似但不完全相同
有人请删除“这个问题可能已经有答案:”标签.
在我的情况下,捆绑路径已经以“〜”开头
模板:
@ Styles.Render( “〜/内容/ CSS”)
@ Scripts.Render( “〜/捆绑/ JS”)
捆绑配置:
bundles.Add(new Bundle(“〜/ Content / css”).Include(“〜/ Content / * .css”));
bundles.Add(new Bundle(“〜/ bundles / js”).Include(“〜/ Scripts / myproj.*”));
解决方法
这个问题现在是否超越了您的整个团队或仅仅是您的机器?如果是整个团队,至少你知道改变发生在提交周期的某个地方.
你重建了解决方案吗?清理得当吗?您运行IIS,IIS Express还是Cassini?您是否绝对确定您在调试器中运行的站点/构建版本未处于发布模式?您可能正在调试未通过构建管道修改的特定构建(失败的构建肯定属于此类别).
我正在使用VS 2010和MVC 4,默认情况下在调试模式下,我看到绝对没有捆绑.我没有明确设置任何东西.如果你看到不同的东西,显然必须考虑到它,因为这不是正常的行为.
我觉得你最好的方法是最难的:放松你的提交.制作工作目录的副本,并在此之前的某个时间恢复.验证此版本中没有出现问题,不要只是假设.现在检查在该时间点和现在之间的一半提交.再次测试.如果构建仍然良好,将时间缩短一半并重复.一旦你遇到这个问题,你知道它引入的提交是在你最后一个“好”提交和你当前正在测试的提交之间的某个地方.此技术极大地简化了将问题隔离到特定提交的过程.除非我完全不确定代码,否则我几乎从不会一次提交一个提交,或者我已经很好地指出它可能在哪里.
我们今天的关于asp.net-mvc – 如何检查MVC cshtml页面中的调试模式和asp.net mvc view的分享就到这里,谢谢您的阅读,如果想了解更多关于ASP.NET MVC:如何在MVC应用程序中使用静态HTML页面?、asp.net-mvc – Angular ng-include cshtml页面、asp.net-mvc – asp.net mvc 4 – 谁调用_ViewStart.cshtml和什么步骤的顺序、asp.net-mvc – ASP.NET MVC 4在调试模式下捆绑js文件的相关信息,可以在本站进行搜索。
本文标签: