Tag: asp.net mvc

如何使用MVC路由多语言URL

我需要现有控制器的多语言URL路由。 让我解释一下: 我有一个名为“Product”的控制器和名为“Software”的View; 因此,默认情况下,如果用户输入“ http://example.com/en/Product/Software ”,请获取正确的内容(实际存在于http://example.com/Product/Software中 ), 但是,如果另一个用户 – 法国用户 – 键入“ http://example.com/fr/Produits/logiciels ”,则必须获得控制器并显示正确的内容(同样http://example.com/Product/软件,但有法语文本)。 注意:我使用“{language} / {controller} / {action} / {id}”设置路由表 任何其他无效的url都必须显示404页面。 可能吗?

根据请求从MVC web api返回xml或json

鉴于以下webapiconfig; config.Routes.MapHttpRoute( name: “DefaultApi”, routeTemplate: “api/{controller}/{id}”, defaults: new { id = RouteParameter.Optional } ); 和这个控制器; public class ProductsController : ApiController { Product[] _products = new Product[] { new Product { Id = 1, Name = “Tomato Soup”, Category = “Groceries”, Price = 1 }, new Product { Id = 2, Name = “Yo-yo”, Category = […]

如何在MVC路由中启用特殊字符?

我正在使用asp.net MVC 4。 这些是我的路线: routes.MapRoute( name: “Default”, url: “{controller}/{action}/{id}” ); 我当前的控制器正确响应以下请求: http://localhost:2020/PrivacyUrls/Details/ct14524 如何validation这些url? http://localhost:2020/PrivacyUrls/Details/*ct14524 http://localhost:2020/PrivacyUrls/Details/&ct14524 现在返回404。 从客户端(*)检测到潜在危险的Request.Path值。 从客户端(&)检测到潜在危险的Request.Path值。 我想添加这条路线,但它没有帮助: routes.MapRoute( “PivacyUrl/Details”, “PrivacyUrls/Details/{*ctid}”,// URL with parameters new { controller = “PrivacyUrls”, action = “Details” } );

MVC身份validation – 最简单的方法

我看过ASP.NET身份,它看起来非常复杂,难以理解。 基本上我想知道的是在登录时授权用户的最简单方法,因此[授权]数据注释将允许他们通过。

PHP curl to .NET HttpRequest:文件上传到服务器

我想要实现的是使用token身份validation(网络凭据中不需要用户名或密码)将单个/多个.csv文件上传到服务器,并且还会收到响应。 我有一个使用curl libs编写的PHP脚本(我的知识非常少),这个脚本实现了目的,但我打算将它转换为c#(HttpRequest)。 PHP脚本: $Files,’token’=>’0fc0975128d45cac2cechjhj676t5ft76f’)); // Execute the handle $execResult=curl_exec($ch); if($execResult=== false) { echo ‘Curl error: ‘ . curl_error($ch); } else { echo ‘Operation completed without any errors’; echo $execResult; } } function redirect($redirect,$redirect_2,$message) ///confirm box pop up { echo “javascript: var ask = confirm(‘”.$message.”‘); if(ask==true) { } else { window.location = ‘”.$redirect_2.”‘; } “; […]

Asp:net MVC 3:@ Html.Editor在模板中对我的模型进行子集合?

我已经被困了很长时间来编辑我的模型的子集合,模型的集合变为空。 我终于找到了一个解决方案,但我发现它有点脏: 首先是我的测试数据: 模型对象 : public class ContainerObject { public String Title { get; set; } public List ObjectList { get; set; } } 子集合对象 : public class ContainedObject { public int Id { get; set; } public String Text { get; set; } public Boolean IsSelected { get; set; } } 生成对象的控制器方法 public ActionResult […]

MVC Action未在控制器中触发

我在视图中创建了一个模型,一些字段和一个按钮: 视图: @model IEnumerable @foreach (var item in Model) { @Html.TextBoxFor(modelItem => modelItem.name) } 控制器: public ActionResult Index() { var model = selectModels(); return View(model); } [HttpPost] public ActionResult Save(IEnumerable model) { return View(); } 问题是: 为什么不解雇“保存”动作?

Mvc Asp排序项目

我在我的应用程序中使用PagedList.MVC进行分页。 这工作正常。 分页工作正常,OrderBy下拉列表工作正常。 当我从下拉列表中选择值时,它会给出所需的排序结果。 我的意思是,如果我选择AZ然后它按升序排序项目,但当我点击第二页或下一页时,它不排序任何项目,url变为这样 HTTP://本地主机:41213 /首页/产品页= 2的pageSize = 6 而且我怎样才能使这个pageSize = 6成为动态? 我想把它放在像{5,10,15,20}这样的下拉列表中,当用户选择一个值时,它应该显示所选择的项目数。 调节器 [HttpGet] public ActionResult Products(int? OrderBy, int page=1, int pageSize=6) { private Shopping db = new Shopping(); switch (OrderBy) { case 1: List listProductsasc = db.Products.OrderBy(p => p.Name).ToList(); PagedList modelasc = new PagedList(listProductsasc, page, pageSize); return View(modelasc); case 2: List listProductsdesc […]

回收或重启后无法在IIS上保留Web应用程序

我有一个MVC应用程序,使用Quartz.NET定期发送电子邮件。 尽管已发布的应用程序在IIS正常运行,但在回收应用程序池或在IIS上重新启动应用程序后,它无法运行。 在网上搜索我发现有几个post建议对配置文件或IIS进行一些更改,但它们都没有正常工作。 那么,有什么方法可以解决这个问题吗? 我需要一个可以应用于应用程序端的解决方案(如果只是简单地进行配置更改等,则需要在IIS端)。 我认为这是在IIS上保留应用程序时的常见问题,不是吗? 注意:我使用的是Windows Server 2008和IIS 7.5。

MVC 3形成post和持久模型数据

我想我错过了关于MVC表单如何工作的一些基础知识。 我的主页上有一个搜索表单,有五六个不同的字段供用户搜索。 所以我对我的结果动作进行了这个post就好了。 Result操作如下所示: [HttpPost] public ActionResult Results(SearchModel model) { ResultsModel results = new ResultsModel(); results.ResultList = SearchManager.Search(model).ToList(); return View(“Results”, results); } 我为这篇文章简化了上面的方法,但想法是一样的。 所以一切正常。 我的结果页面显示结果列表,我的用户位于以下URL: http://www.site.com/results 所以…现在我想做一些相当普遍的事情。 我在结果页面上有两个下拉列表。 “排序依据”和“每页结果数”。 我该怎么做并将全套模型数据发送回控制器,以便我可以查询新参数? 实际上,SearchModel类有大约60个不同的字段。 所有这些数据都可能包含在模型中。 你如何坚持到“回帖”的页面? 同样的问题让我对如何进行分页感到有点困惑。 我的分页链接将转到以下URL: http://www.site.com/results/2 但是这假设我们正在响应GET请求(我不想在查询字符串中使用60个数据字段)并且模型数据在GET请求之间传递,我知道情况并非如此。 正如我所说的,我认为我缺少一些关于使用MVC 3,模型和表单post的基础知识。 谁能帮助我指出正确的方向? 我很乐意根据需要编辑/更新这篇文章以澄清事情。 编辑 :我也想指出,我想避免将视图模型存储在Session变量中。 这个站点最终将最终在Web场中进行负载平衡,并且我真的试图尽可能避免使用Session。 但是,如果它是唯一的选择,我将配置另一个会话状态提供程序,但我不想这样做。