Tag: asp.net mvc

在MVC中,可以更改@ Html.DropDownListFor中每个列表项的字体(创建类似于MS office的字体下拉列表

在MVC 4中,我有类似下面的代码, @for (int i = 0; i < Model.dropDownControl.Count; i++) { @List fonts = (List)ViewBag.vFontlIst; @Html.DropDownListFor( model => model.dropDownControl[i].Font, fonts, new { style = “width: 100px; font-family:”+Model.dropDownControl[i].Font+””, id = “ddlFontDropDownList” }) } 在这里我尝试创建类似于我们在MS Office中用于字体选择的下拉列表,在上面的代码下拉字体样式对于完整列表总是相同的,这里selectlist包含所有可用字体控制器的列表,其具有以下代码: List liFonts = new List(); foreach (FontFamily font in System.Drawing.FontFamily.Families) { liFonts.Add(new SelectListItem { Text = font.Name, Value = font.Name […]

使用angularJS和asp.net mvc下载文件

我是使用asp.net mvc开发的初学者。 我正在尝试下载文件(图片,pdf ..)这是我的代码 在asp控制器中 [HttpPost] public HttpResponseMessage Download(int id) { var db = new TutorialGEDEntities(); Tutorial fileToDownload = db.Tutorials.Find(id); string name = fileToDownload.filepath; Debug.WriteLine(“filepath ” + name); try { if (!string.IsNullOrEmpty(name)) { //var root = System.Web.HttpContext.Current.Server.MapPath(name); var filePath = System.Web.HttpContext.Current.Server.MapPath(name); ; char[] s = new char[name.Length – name.LastIndexOf(“\\”) – 1]; name.CopyTo(name.LastIndexOf(“\\”)+1, s, 0, name.Length […]

如何将SignalR添加到我的WCF服务和MVC 4客户端应用程序?

我正在使用WCF服务为ASp.net MVC 4客户端应用程序开发项目。 我在MVC中创建了一个控制器并在其中添加了一个视图。 而且,我通过ajax和jquery从视图传递数据。来自服务的响应,结果数据值存储在一个html元素中。就像我实现的那样。一部分已经完成。第二部分是 我有想法在WCF和MVC4服务中添加functionok SignalR? 我认为SignalR是一个自托管? 我如何在WCF和MVC4中为signalR创建一个api。我的代码是。 MVC控制器: – using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace MVC4.Controllers { public class SampleController : Controller { public ActionResult Index() { return View(); } } } 视图:- @{ Layout = null; } Index $(document).ready(function () { var u = $(“.user”); var l […]

在ASP.NET MVC中使用Fire和忘记的危险

我在ASP.NET MVC应用程序中使用Fire和Forget意味着我正在生成一个长期运行的CPU或IO密集型后台线程,它不依赖于用户需要。 这很好但我担心在应用程序域/进程回收时间的过程中,我的后台线程可以保证运行完成或者可能在中间停止。 如果有任何危险,那么如何避免这种情况。

附加信息:远程服务器返回错误:(404)Not Found。 MVC

我正在尝试获取https://www.americasarmy.com/soldier/1309069的源代码 使用以下代码: using (WebClient client = new WebClient()) { ViewBag.htmlCode = client.DownloadString(“https://www.americasarmy.com/soldier/1309069”); }

如何在URL中没有操作的情况下获取路由

我希望我的路线看起来像: /product/123 我有一个动作GET,但我不想在URL中,它目前是: /product/get/123 怎么弄这个? 的Global.asax.cs RouteConfig.RegisterRoutes(RouteTable.Routes); public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute(“{resource}.axd/{*pathInfo}”); routes.MapRoute( “Default”, “{controller}/{action}/{id}”, new { controller = “Home”, action = “Index”, id = UrlParameter.Optional }, new[] { “MyApp.Web.Controllers” } ); }

在asp.net Web Api中处理未经身份validation的请求的最佳方法

我有一个带有Web Api 2的标准VS2013 MVC5项目。 标准项目的设计方式,如果请求未经过身份validation, [Authorize]属性只返回401状态代码,而完全独立的模块会嗅探任何401代码,暂停它们,而是将302重定向发送到登录页面在Startup.Auth.cs文件中指定。 这对于Mvc控制器来说没问题,但是对于Web Api控制器来说真的很糟糕,因为例如浏览器会自动将ajax请求重定向到登录URL,所以即使响应文本只是登录页面的html,你最终也会得到200OK状态。 这使得编写良好的javascript变得很困难,可以区分您只需要告诉用户重新登录的情况与其他类型的错误。 理想情况下,我们应该能够根据状态代码判断,但javascript永远不会看到401状态。 处理这个问题的最佳方法是什么? 我的第一个想法是写一个授权属性,但使用状态代码403而不是401: public class ApiAuthorizationAttribute : System.Web.Http.AuthorizeAttribute { public override void OnAuthorization(System.Web.Http.Controllers.HttpActionContext actionContext) { if (actionContext.RequestContext.Principal.Identity.IsAuthenticated) { base.OnAuthorization(actionContext); } else { actionContext.Response = actionContext.ControllerContext.Request.CreateErrorResponse(HttpStatusCode.Forbidden, “Not signed in.”); } } } 当然, 规范明确声明403是不正确的: 授权无效,请求不应重复 我的另一个想法是,也许我应该完全禁用asp.net的401重定向模块并处理自定义授权属性中的重定向,因为即使对于Mvc视图也很糟糕,因为它不允许您重定向到不同的登录页面,具体取决于用户试图访问的网站。 还有其他更好的方法来处理这个吗?

C#和ASP.NET中的换行符变化是什么? (\ r \ n vs. \ n)

我从一开始就一直在为ASP.NET编写代码,今天我遇到了一些我以前从未见过的东西。 通常我会在C#中查找换行符(例如,当从textarea发布在ASP.NET中时)期望“\ r \ n”。 现在我正在使用MVC框架,来自textarea的线路上的文本只有“\ n”用于换行符。 在旧学校TextBox控件中是否有一些事情可以规范换行符? 由于MVC只是按原样使用表单数据,这是正常的吗? 很想得到一些见解。

你如何在asp.net mvc中做webforms的autopostbackfunction?

我有一个简单的webgrid显示列表。 我还有一个包含很少项目的combobox。 我希望当用户更改选择时,更改的值应该发布到服务器。 我怎样才能做到这一点? 任何代码片段都会有所帮助。

C#中的Paypal IPN侦听器问题

我正在使用paypal和沙盒环境的订阅按钮来测试和使用ASP.net MVC3作为开发环境。 付款完成后,我检查了IPN历史记录,响应显示为200,url是我的预期。 我在Home控制器中创建了如下监听器。 [HttpPost] public ActionResult paypalCallback() { //Doing some hardcoded DB insertions. DodbInsertion(“Received”); //Writing log file WriteLog(“Ipn Log”); Dictionary result = new Dictionary(); result.Add(“Status”, “Success”); return Json(result, JsonRequestBehavior.AllowGet); } 在数据库中没有什么是写作,博客中没有任何反应 然后我使侦听器函数成为一个GET方法并从浏览器调用然后日志和数据库插入正在发生。如果数据库插入和日志function将正常工作。 但是当它从Paypal IPN Listener调用时它无效。 然后我添加了Response.StatusCode = 500; 监听器function。然后在ipn历史中它显示状态为500; 我的申请发表在godady。 我不知道是否与许可有任何关系。 请帮助我提前谢谢。 Syam.S