Questions tagged «asp.net-mvc-3»

ASP.NET MVC 3是Model-View-Controller扩展的第三个主要版本,用于在.NET框架中开发Web应用程序。

3
限制从Linq返回列表中的结果数
我正在使用Linq / EF4.1从数据库中提取一些结果,并希望将结果限制为(X)个最新结果。其中X是用户设置的数字。 有没有办法做到这一点? 我目前正在将它们传递回来,List好像这将有助于限制结果集。虽然我可以通过循环直到X来限制它,但我只是假设不传递多余的数据。 万一它是相关的...从SQL Server数据库运行的C#MVC3项目。

8
如何访问JSON对象的名称/值?
function (data) { //add values based on activity type //data = JSON.parse(data); //alert(abc.Phone1); alert(data.myName) alert(data.toString()); if (activityType == "Phone") { } return; }, 如您所见,该回调函数从控制器$.ajax获取JSON数据。 例如: [{"name":"myName" ,"address": "myAddress" }] 在这种情况下,我的第一个警报未定义,而第二个/第三个警报弹出框显示: [{"name":"myName" ,"address": "myAddress" }] 如何按名称访问值,以便我的第一个警报填写的myName值是name?


5
在不同的控制器动作方法之间传递数据
我正在使用ASP.NET MVC 4。我正在尝试将数据从一个控制器传递到另一个控制器。我做错了。我不确定是否可行? 这是我要从中传递数据的源操作方法: public class ServerController : Controller { [HttpPost] public ActionResult ApplicationPoolsUpdate(ServiceViewModel viewModel) { XDocument updatedResultsDocument = myService.UpdateApplicationPools(); // Redirect to ApplicationPool controller and pass // updatedResultsDocument to be used in UpdateConfirmation action method } } 我需要将其传递给此控制器中的此操作方法: public class ApplicationPoolController : Controller { public ActionResult UpdateConfirmation(XDocument xDocument) { …

7
如何在视图内加载局部视图?
我对这种局部看法非常困惑。 我想在我的主视图中加载局部视图。 这是简单的例子。 我正在将Homecontroller Index操作的Index.cshtml加载为主页面。 在index.cshtml中,我通过创建链接 @Html.ActionLink("load partial view","Load","Home") 在HomeController中,我添加了一个名为 public PartialViewResult Load() { return PartialView("_LoadView"); } 在_LoadView.cshmtl中,我只是 <div> Welcome !! </div> 但是,在运行项目时,index.cshtml会首先呈现并显示链接“ Load Partial View”。当我单击它时,它将转到新页面,以将来自_LoadView.cshtml的欢迎消息呈现为index.cshtml。 有什么事吗 注意:我不想通过AJAX加载页面或不想使用Ajax.ActionLink。

7
该视图必须派生自WebViewPage或WebViewPage <TModel>
我正在关注Justin Slattery的Plugin Architecture教程,并尝试使其适应Razor,而不是WebForm Views。 其他一切(控制器,插件程序集加载等)似乎都还可以。但是,我无法使嵌入式Razor视图正常工作。当我尝试浏览到“ HelloWorld / Index”时,出现以下错误: The view at '~/Plugins/MyProjectPlugin.dll/MyProjectPlugin.Views.HelloWorld.Index.cshtml' must derive from WebViewPage or WebViewPage&lt;TModel&gt;. 引发异常 System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) +262 如果需要,我可以包括完整的堆栈跟踪。 有人可以建议我做错什么吗?

7
MVC 3:有条件地使用HtmlHelpers添加Disabled属性
我有一个ASP.Net MVC 3 Web应用程序,并且正在使用HtmlHelper类向视图页面添加一个复选框,如下所示: @Html.CheckBox("CheckBox1", true, new { @class = "Class1" }) 我想做的是有条件地基于视图状态属性添加禁用的属性。基本上,以下将是理想的... @Html.CheckBox("CheckBox1", true, new { @class = "Class1", @disabled = Model.ReadOnly }) 不幸的是,由于禁用属性的性质,这将不起作用,因为分配给禁用属性的任何值(甚至是“ false”)都将转换为true。 我已经想到了一些解决此问题的方法,所以问题不在于我该怎么做。但是,有没有像上面所需的方法这样的简单方法?还是我必须采取以下措施之一? 我知道我能做的... 创建一个if / else语句并写入不同的Html.CheckBox行(对于可读性不是很好-可能会抛出标记警告-不确定) 跳过HtmlHelper类,然后手写标记以提供更好的条件属性(使代码保持较短,但会增加不一致性) 创建一个带有“ disabled”参数的自定义帮助程序(最干净的解决方案,但需要不需要的额外方法-到目前为止可能是最好的选择)

3
我应该将Glimpse部署到生产站点吗?
我最近将Glimpse Debugger软件包添加到了我的项目中。这添加了对Glimpse dll的引用,并修改了一些Web.Config。 在开发和生产环境中,我尽可能地喜欢我的项目。 因此,将Glimpse部署到我的生产站点是否是节省/明智的选择,还是应该创建一个不同的项目(或从csproj文件创建分支)以仅将其保留在本地? 我担心的东西包括: 性能 安全漏洞

6
一个单元应该如何测试.NET MVC控制器?
我正在寻找有关.NET mvc控制器的有效单元测试的建议。 在我工作的地方,许多此类测试都使用moq来模拟数据层并断言某些数据层方法已被调用。这对我来说似乎没有用,因为它实质上是在验证实现没有更改,而不是测试API。 我还阅读了一些推荐文章,例如检查返回的视图模型的类型是否正确。我可以看到它提供了一些价值,但仅凭它似乎不值得编写许多行模拟代码(我们的应用程序的数据模型非常大而复杂)。 谁能提出一些更好的控制器单元测试方法或解释上述方法为何有效/有用? 谢谢!

3
在ASP.NET MVC中使用Tempdata-最佳实践
我正在使用ASP.NET MVC 3来构建Web应用程序。 我试图做的是在两个控制器之间传递值,尽管有很多方法可以做到这一点,我对此特别感兴趣TempData。 public ActionResult Action1() { string someMessage; Test obj = SomeOperation(); if(obj.Valid) { someMessage = obj.UserName; } else { someMessage = obj.ModeratorName; } TempData["message"] = someMessage; return RedirectToAction("Index"); } public ActionResult Index() { ViewBag.Message = TempData["message"] return View(); } 那么TempData这里的用法正确吗?我的意思是,按照最佳编程实践,这是正确的使用方式TempData吗? 在什么实时情况下应该TempData使用? 注意:我已经通过以下链接 何时在ASP.Net MVC中使用TempData与Session http://www.gregshackles.com/2010/07/asp-net-mvc-do-you-know-where-your-tempdata-is/ 谢谢

10
为什么Visual Studio代码格式不能正确用于Razor标记?
或者,我宁愿问一下,什么时候VS代码格式化才能正确用于Razor标记?格式化适用于大多数结构,但似乎会阻塞“ if”块。下面的代码是由VS格式化的。用一个缩进来修复这种情况非常容易,但是我很好地接受了日常使用的格式设置,并且喜欢在我的大部分代码中经常使用它,因此,我尽可能避免使用手动格式设置。现在,我只是将其保留为VS格式。 @{ if (User.Identity.IsAuthenticated) { &lt;text&gt;Hello &lt;/text&gt; @Html.Display("@ViewBag.UserName") &lt;text&gt; - &lt;/text&gt; @Html.ActionLink("Sign Out", "LogOff", "Account", null, new { style = "font-weight: bold;" }) } } 我认为,对于可读性来说,重要的是,例如,上面的if块的主体要缩进,除了看起来更好。



4
如何使用ASP.NET MVC 3和Stackoverflow的Markdown
我已经研究了几个小时,却找不到任何真正的来源。我正在ASP.NET MVC 3中构建站点,并希望利用StackOverflow使用的Markdown编辑器。有人有很好的教程吗? 您在哪里下载最新的降价商品?它用什么语言写?我将从哪里开始将其集成到MVC 3项目中?即使在完成所有搜索和阅读之后,我还是很困惑。 我遇到了一个站点。http://daringfireball.net/projects/markdown/但这似乎有些古怪,而且我似乎必须学习一些我完全没有经验的CGI和PERL。javascript / jQuery版本会很出色。非常感谢任何想法,链接,参考。 更新 我注意到这个问题引起了广泛的关注,因此我决定使用一些有用的参考进行更新。我设法在CodeTunnel.com上让Markdown编辑器正常工作,并为此写了一些博客。希望他们能帮助遇到此问题的任何人。 MarkdownSharp和编码的HTML jQuery WMD插件 查找并实施WMD编辑器

3
如何覆盖@ Html.LabelFor模板?
我有一个简单的字段表格 &lt;div class="field fade-label"&gt; @Html.LabelFor(model =&gt; model.Register.UserName) @Html.TextBoxFor(model =&gt; model.Register.UserName) &lt;/div&gt; 结果是: &lt;div class="field fade-label"&gt; &lt;label for="Register_UserName"&gt;Username (used to identify all services, from 4 to 30 chars)&lt;/label&gt; &lt;input type="text" value="" name="Register.UserName" id="Register_UserName"&gt; &lt;/div&gt; 但我希望该LabelFor代码在&lt;span&gt;内部附加一个,这样我最终可以拥有: &lt;label for="Register_UserName"&gt; &lt;span&gt;Username (used to identify all services, from 4 to 30 chars)&lt;/span&gt; &lt;/label&gt; 我怎样才能做到这一点? 所有示例都使用,EditorTemplates但这是一个LabelFor。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.