Tag: asp.net mvc

通过jQuery将JSON数据发布到ASP .NET MVC 4控制器操作

我无法将复杂的JSON对象传递给MVC 4控制器操作。 由于JSON内容是可变的,所以我不希望MVC将JSON的各个属性/元素映射到action方法参数列表中的参数。 我只想在控制器操作中将数据作为单个JSONstring参数获取。 以下是我的操作方法的签名: [HttpPost] [ValidateInput(false)] public string ConvertLogInfoToXml(string jsonOfLog) 这里是我尝试从我的浏览器发布一些JSON数据: data = {prop: 1, myArray: [1, "two", 3]}; //'data' is much more complicated in my real application json = {jsonOfLog: data}; $.ajax({ type: 'POST', url: "Home/ConvertLogInfoToXml", data: JSON.stringify(json), success: function (returnPayload) { console && console.log ("request succeeded"); }, error: function (xhr, ajaxOptions, thrownError) […]

在参数中使用斜杠的URL?

题: 我正在创build一个维基软件,基本上是维基百科/ mediawiki的克隆,但在ASP.NET MVC(MVC是重点,所以不build议我ScrewTurn)。 现在我有一个问题: 我使用这个路由映射来路由一个URL,如下所示: http://en.wikipedia.org/wiki/ASP.NET routes.MapRoute( "Wiki", // Routenname //"{controller}/{action}/{id}", // URL mit Parametern "wiki/{id}", // URL mit Parametern new { controller = "Wiki", action = "dbLookup", id = UrlParameter.Optional } // Parameterstandardwerte ); 现在刚刚发生在我身上,可能会有像“AS / 400”这样的标题: http://en.wikipedia.org/wiki/AS/400 另外还有一个(标题为“Slash”): http://en.wikipedia.org/wiki// 和这个: http://en.wikipedia.org/wiki//dev/null 总体而言,维基百科似乎有这样一个有趣的标题列表: http : //en.wikipedia.org/wiki/Wikipedia : Articles_with_slashes_in_title 我如何正确地使这条路线这样的路线? 编辑: 就像是: 如果URL以/ Wiki […]

只显示date和时间

在MVC剃刀,我正在这样的数据库中的当前date.. model.Returndate = DateTime.Now.Date.ToShortDateString(); 由于数据库字段是一个date时间数据types,我将当前date转换为string格式,这是行不通的..我怎么能这样做? 我正在做的string格式,因为我想要的date以mm / dd / yyyy格式,而不是在mm / dd / yyyy hh:mm:ss时间格式.. 编辑: 在我有控制器 var model = new ViewModel(); model.ReturnDate = DateTime.Now; return PartialView("PartialView", model); 在部分观点,我有 @Html.EditorFor(model => model.Returndate) 这是它在date和时间一起显示的date…我只想显示date。 不是时候。 我希望这个编辑更好地解释。

正确使用.net MVC Html.CheckBoxFor

我想知道的是ASP.NET MVC中的Html.CheckBoxFor HTML助手的正确语法。 我试图完成的是用一个ID值初始检查checkbox,所以我可以在控制器中引用它来查看它是否仍然被选中。 下面是正确的语法? @foreach (var item in Model.Templates) { <td> @Html.CheckBoxFor(model => true, item.TemplateId) @Html.LabelFor(model => item.TemplateName) </td> }

ASP.NET MVC 5组单选button

我开始我的第一个ASP.NET MVC项目,所以我有一个简单的问题。 我有以下代码: foreach(var question in Model.GeneralQuestions) { <div class = "well"> <h3> <strong>@question.QuestionString</strong> </h3> @foreach (var answer in question.PossibleAnswers) { @Html.RadioButtonFor(model => question.QuestionString, answer.Answer) @Html.Label(answer.Answer) <br /> } </div> } Model.GeneralQuestions中的所有问题都是唯一的,所以单选button应该按名称属性分组(每个单选button一组)。 但是这个代码只产生一个组,所以当我第一个回答第一个问题时就会被取消select。 我需要改变什么? 编辑 我的模型看起来像: public class StudentViewModel { public Student Student { get; set; } public List<Question> GeneralQuestions { get; set; } public […]

.NET WebAPI属性路由和inheritance

我玩弄了一个基本控制器的概念,该控制器使用通用存储库为我的API控制器提供基本的CRUD方法,这样我就不必在每个新控制器中复制相同的基本代码。 但是遇到了路由属性在基本控制器中被识别的问题。 为了确切显示我遇到的问题,我创build了一个非常简单的WebAPI控制器。 当我在主控制器中的Get方法,并直接从ApiControllerinheritance我没有任何问题,并按预期工作。 [RoutePrefix("admin/test")] public class TestController : ApiController { [Route("{id:int:min(1)}")] public string Get(int id) { return "Success"; } } 当我将Get方法移动到基本控制器时,它将返回404页面的内容。 [RoutePrefix("admin/test")] public class TestController : TestBaseController { } public class TestBaseController : ApiController { [Route("{id:int:min(1)}")] public string Get(int id) { return "Success"; } } 一些更有趣的笔记: 我可以在GET / Test / 1上访问这个动作。 所以它仍然是基于默认路由的。 当我尝试访问POST / […]

ASP.NET MVC从数据库加载Razor视图

ScottGu提到,我们应该可以从数据库加载Razor视图 (查看注释部分),那么有没有人有一个如何做到这一点的例子? 谢谢。

在下拉列表中支持optgroup .NET MVC?

继续从这个问题编程创build一个下拉列表我希望我的列表也有几个optgroup列表。 目前这是可能的吗? 我知道我需要将一个selectList传递给dropDownList,但不知道如何将文本,值,optgroup添加到selectList。 我想要最终的结果产生: <option value="">Please select</option> <optgroup label="Option A"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </optgroup> <optgroup label="Option B"> <option value="a">A</option> <option value="b">B</option> <option value="c">C</option> </optgroup> </option>

C#6.0function不适用于Visual Studio 2015

我正在用C#6.0testingVisual Studio 2015,但语言function不起作用。 在MVC Web应用程序中,下面的代码不会编译: if (!string.IsNullOrWhiteSpace(Model.Profile?.TypeName)) { // More logic here… } 但是,当我通过debugging和IIS Express运行应用程序时,出现以下错误: CS1525:无效的expression式“。” 我如何启用这些function?

在MVC中使用ChildActionOnly

你什么时候使用ChildActionOnly属性? 什么是ChildAction ,在什么情况下你想要使用这个属性限制一个动作?