Tag: asp.net mvc

MVC Razor @foreach

我听说在视图里面有@foreach是不可能的。 意思是说,这个观点不应该有任何逻辑。 @foreach逻辑的最佳实践是什么? @foreach..

我如何在一个区域使用一个普通的_ViewStart?

在我的“根”视图文件夹,我有一个_ViewStart与下面的代码: @Code Layout = "~/Views/Shared/_Layout.vbhtml" End COde 在我的Area / Public / Views文件夹中,我从根Views文件夹获得了_ViewStart的副本。 但是当我运行代码时,我得到这个错误: Unable to cast object of type 'ASP._ViewStart_vbhtml' to type 'System.Web.WebPages.StartPage'. 我不知道我做错了什么? 我也可以为我的地区使用一个_ViewStart.vbhtml吗? 如何在区域中使用_ViewStart.vbhtml ?

MVC5声明Authorize属性的版本

我在VS2013 RC中使用MVC5和新的OWINauthentication中间件尝试了一些新东西。 所以,我习惯于使用[Authorize]属性来限制angular色的行为,但我试图使用基于声明/活动的授权,而我找不到它的等价属性。 有没有一个明显的我失踪或我需要推出自己的? 我有点期待那里有一个开箱即用。 我正在寻找的东西是沿着[Authorize("ClaimType","ClaimValue")]我想。 提前致谢。

VS 2012上没有ASP.NET MVC 5 Web应用程序模板?

我正在使用Visual Studio 2012,并刚刚安装了“Microsoft ASP.NET和Web框架2013.1 – Visual Studio” 。 正如预期的那样,它添加了创build"ASP.NET MVC 5 Empty Project" 。 事情是,我没有办法像我在使用MVC 4(例如"Asp.NET MVC 4 Web Application" )时那样跳过启动已经有效的“基础应用 "Asp.NET MVC 4 Web Application" 。 我只看到一个空的模板。 我见过的答案如下: 我如何将MVC 5项目模板添加到VS 2012? 在VS 2012中创build并运行MVC 5项目 直接下载链接到VS 2012的ASP.NET MVC 5 并find了关于这个问题的文章 。 这显然不是一个显示屏,因为我总是可以从头开始创build应用程序,但是我仍然想知道是否可以在VS 2012上实现这个function。我是否错过了一个步骤,或者是否需要VS 2013那? 一个function齐全的Web应用程序模板(带有身份validation等)将会很好地涉足MVC 5的新function或原型。

从其他控制器呈现部分视图

有没有办法在我的控制器A视图内呈现从其他控制器B的局部视图? 编辑:我写了一个局部视图,只有两个控制器,我不想复制到两个视图文件夹。 我希望在发生某些事情后每次渲染视图时都会显示局部视图。

Html.DropdownListFor选定的值没有被设置

如何设置Html.DropDownListFor的选定值? 我一直在网上看,看到它可以通过使用第四个参数,如下所示: @Html.DropDownListFor(m => m, new SelectList(Model, "Code", "Name", 0), "Please select a country") 我的select列表显示如下: <select id="ShipFromCountries" name="ShipFromCountries"> <option value="">Please select a country</option> <option value="GB">United Kingdom</option> <option value="US">United States</option> … </select> 但由于某些原因英国仍然被选中,但我想要“请select一个国家”来select。 任何人都知道我可以做到这一点? 编辑 我已经更新了我的代码,因为function上有轻微的变化,但似乎仍然遇到了这个问题。 这是我的看法: @Html.DropDownListFor(n => n.OrderTemplates, new SelectList(Model.OrderTemplates, "OrderTemplateId", "OrderTemplateName", 1), "Please select an order template") 1是我想要select的option的ID,我也尝试了option的文本,但也没有工作。 有任何想法吗?

Html.EditorFor设置默认值

菜鸟问题。 我有一个parameter passing给创build视图。 我需要设置一个默认值的字段名称。 @ Html.EditorFor(model => model.Id)我需要设置这个input字段的名称Id与默认值,通过一个动作链接传递给视图。 那么,这个input字段(@ Html.EditorFor(model => model.Id))如何被设置为一个默认值。 下面的工作? 数字5是一个参数,我传递到文本字段设置默认值。 @Html.EditorFor(c => c.PropertyName, new { text = "5"; })

以下部分已被定义,但尚未呈现布局页面“〜/ Views / Shared / _Layout.cshtml”:“脚本”

我是新来的ASP MVC和利用介绍ASP MVC 4 Beta教程http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet -mvc -4- 我遇到了一个错误,我似乎无法find答案,也没有太多的编程经验,所以我不知道从哪里开始解决这个问题。 我感谢您可以提供的任何帮助。 我正在从控制器部分访问您的模型的数据,当我尝试创build一个电影作为教程的一部分,我收到这个错误,我点击链接“创build新的”,我得到以下错误 以下部分已被定义,但尚未呈现布局页面“〜/ Views / Shared / _Layout.cshtml”:“脚本” 我没有使用Visual Studio Express,而是select下载Visual Studio 2012 RC(不确定这是否是我的问题的根本原因。 我意识到你可能会要求我包含代码来回答这个问题,但我不确定什么代码甚至包括。 请告诉我你需要什么代码,如果有的话,我会很乐意把它添加到我的问题。 谢谢,

自动完成应用值不标签到文本框

我有麻烦试图让自动完成工作正常。 这一切看起来不错,但是… <script> $(function () { $("#customer-search").autocomplete({ source: 'Customer/GetCustomerByName', minLength: 3, select: function (event, ui) { $("#customer-search").val(ui.item.label); $("#selected-customer").val(ui.item.label); } }); }); </script> <div> <input id="customer-search" /> </div> @Html.Hidden("selected-customer") 但是,当我从下拉列表中select一个项目时,该值已应用于文本框而不是标签。 我做错了什么? 如果我看着使用萤火虫的来源,我可以看到我的隐藏领域正在更新正确。

如何获取由asp.net MVC EditorFor生成的HTML标识

我使用HTML助手呈现我的领域: <%=Html.EditorFor(m => m.User.Surname)%> 和输出将是这样的: <input class="text-box single-line" id="User_Surname" name="User.Surname" type="text" value="" /> 助手使用className +'。' èfieldName构buildid。 我需要将id传递给一个jQuery函数。 有没有办法让它没有硬编码? 也许可以使用ASP.NET MVC2约定的帮手?