Tag: asp.net

.Net程序集绑定redirect与不同的公钥标记

如果公钥标记在旧版本上为空,并在较新版本上设置,是否有可能在引用程序集的不同版本之间执行程序集绑定redirect? 例如,我有两个程序集… System.Web.Mvc,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null 和 System.Web.Mvc,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35 如果下面的程序集绑定redirect工作在Asp.Net web.config中… <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/> <bindingRedirect oldVersion="1.0.0.0" newVersion="2.0.0.0"/> </dependentAssembly> </assemblyBinding> </runtime>

HttpRequest与HttpRequestMessage与HttpRequestBase

ASP.NET中的这些类有什么区别? 正如我发现这些类之间没有inheritance关系。 下面的代码返回一个HttpRequestWrapper实例,它is a HttpRequestBase并且has a HttpRequest HttpRequestMessage request = …; HttpRequestBase reqBase = (request.Properties["MS_HttpContext"] as HttpContextWrapper).Request; // do somthing with reqBase.Cookies 看起来微软在从HttpRequestMessage到达cookie的时候想要惹恼我们。 是否保证request.Properties["MS_HttpContext"]永远不会为空? 或者认为ajax请求是在ApiController的一个动作中处理的。 我可以用两种不同的方式来达到客户的IP。 var ip = (request.Properties["MS_HttpContext"] as HttpContextWrapper).Request.UserHostAddress var ip = HttpContext.Current.Request.UserHostAddress 这两者有什么区别? 或者一般来说,我可以以不同的方式访问相同的请求/响应数据,如Cookie,Header,Requestor Info等。 什么时候用哪个? 我们可以这样说:“如果它是一个Ajax请求,HttpRequest不能保证正常工作,因为缺less一些Ajax请求,我们应该使用HttpRequestMessage”?

面板控制和Div的区别

我想知道在asp.net和div与runat="server" Panel控制之间有什么区别? 既然都作为一个div呈现。 哪一个最好(条件)?

Windows Azure PaaS(networkingangular色)的真正替代品?

我正在寻找Windows Azure PaaS(平台即服务)产品的替代产品,满足以下要求: 该平台应该提供高可用性和可扩展性。 平台应该为我pipe理/更新应用程序服务器和操作系统。 该平台应提供某种forms的NoSQL数据库 (如Azure Table Storage或SimpleDB)。 该平台应本机支持ASP.NET MVC ,即IIS和运行时环境应该自动pipe理/修补我。 虽然亚马逊满足第1项和第3项,但它仅提供IaaS(基础架构即服务),这意味着我仍然有大量的pipe理开销。 所以这个问题是,Windows Azure有什么替代scheme,提供了一个大致相同的function集? 任何build议,欢迎!

MSBuild DeployOnBuild = true不发布

我有一个使用Hudson通过命令行构build的Visual Studio 2010 MVC2 Web应用程序。 我想让Hudson发布一个Web输出,所以我在命令行中添加了DeployOnBuild = true和CreatePackageOnPublish = True标签。 我的命令是: C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /target:Clean,Build /property:Configuration=Debug;DeployOnBuild=True;CreatePackageOnPublish=True; [my project name.csproj] 在我的开发机器(Windows 7)上运行这个命令,成功地发布了一个web输出到\obj\Debug\Package\PackageTmp\ 。 但是,在Hudson服务器(WS 2008)上运行它可以编译成功,但不会发布。 相同的命令,相同版本的MSBuild,相同的源代码。 我已经尝试了/t:Publish目标,这给了我一个跳过不可发布的项目响应,正如我在其他人的post中看到的。 我已经尝试将DeployOnBuild=True和CreatePackageOnPublish=True标签添加到我的项目文件中,并且没有任何更改。 任何想法,为什么这不是出版? 我是否错误地使用这些标签? 我确定这里有些东西我只是没有看到。

Web API 2.1和NLog中的全局exception处理

在Web API 2.1中是新的全局error handling 。 我发现了一些例子,如何将exceptionlogging到Elmah( elmah示例 )中。 但是我使用NLog将错误logging到数据库表中。 使用NLog的Web API全局error handling是否可行? 请举一些例子。

ASP.NET MVC3部分视图命名约定

我是MVC开发新手,请耐心等待。 是否真的有必要像_Action.cshtml (用_下划线)命名我的部分视图符合命名约定? 这是我的问题我有一个控制器(StudentController)和一个行动(列表)有一个名为“List.cshtml”的部分视图文件,并有 @{ Html.RenderAction("List", "Student"); } 在我的HomeController – 索引视图中显示这个作为局部视图的工作。 但是,如果我将_List.cshtml的部分视图_List.cshtml为当然不起作用。 Visual Studio甚至找不到我的操作Student – List的视图,因为它认为它仍然在寻找与我的操作(List.cshtml)完全相同的名称。 我该怎么办? 我很习惯ASP.NET ascx与ascx.cs代码配对。 🙁

使WCF Web服务与GET请求一起工作

背景 过去我已经创build了ASMX Web服务,并能够使用地址约定从Web浏览器和Ajax GET请求访问服务: MyService.asmx/MyMethod?Param=xxx 我刚刚开始使用WCF,并在ASP.NET项目中创build了一个新的Web服务。 它创build一个带有.svc扩展名的文件,如MyService.svc。 现在的情况 我能够使用VS2008附带的WcfTestClient使用服务。 我也可以通过在另一个项目中添加服务引用或使用svcutil.exe命令行来生成代理和configuration文件来创build自己的WCF客户端。 问题 当我尝试从浏览器使用MyService.svc/MyMethod?MyParam=xxx ,我得到一个没有任何错误的空白页面的服务。 我曾经尝试过 我已经添加了一个basicHttpBinding到web.config,并在行为configuration中将其设置为HttpGetEnabled 。 我还在我的操作合同中添加了[WebGet(UriTemplate = "MyMethod?MyParam={MyParam}")]属性。 我已经在这个其他堆栈溢出问题的信息: 用于WCF服务的REST / SOAP EndPoints 不过,在执行这些步骤后,我得到一个空白页面或一个HTTP 404错误。 代码没有什么特别之处。 我只是把一个string作为参数,并返回“你好xxx”。 这是一个基本的“你好WCF世界”概念certificatetypes的东西。 更新 – 这是相关的代码 [ServiceContract] public interface IMyService { [WebGet(UriTemplate = "MyMethod/MyParam={MyParam}")] [OperationContract] string MyMethod(string MyParam); } Web.Config – system.serviceModel部分 <system.serviceModel> <behaviors> <serviceBehaviors> <behavior name="MyServiceBehavior"> <serviceMetadata httpGetEnabled="true" […]

ASP.NET MVC 2.0 JsonRequestBehavior全局设置

默认情况下,ASP.NET MVC 2.0现在将在操作尝试返回JSON以响应GET请求时引发exception。 我知道这可以通过使用JsonRequestBehavior.AllowGet方法的方法重写,但是可以设置一个控制器或更高的基础上(可能是web.config)? 更新:每Levi的评论,这是我最终使用 – protected override JsonResult Json(object data, string contentType, System.Text.Encoding contentEncoding) { return Json(data, contentType, JsonRequestBehavior.AllowGet); }

如何configurationWeb Api 2在单独的项目中查找控制器? (就像我在Web Api中所做的那样)

我曾经把我的控制器放到Mvc Web Api中的一个单独的类库项目中。 我曾经在我的web api项目的global.asax中添加以下行来查找单独项目中的控制器: ControllerBuilder.Current.DefaultNamespaces.Add("MyClassLibraryProject.Controllers"); 除了添加上面的行之外,我从来不需要做任何其他configuration。 这对我来说一直很好。 但是我无法使用上面的方法在WebApi2中执行相同的操作。 它只是不起作用。 WebApi2项目仍然尝试在自己的项目的控制器文件夹中find控制器。 – 在2个月后给予小小的摘要更新(当我开始赏金时): 我创build了一个WebApiOne解决scheme,它有两个项目,第一个是WebApi项目,第二个是控制器类库。 如果我将控制器类库项目的引用添加到WebApi项目中,则所有工作均按预期工作。 即如果我去http://mydevdomain.com/api/values我可以看到正确的输出。 我现在创build了第二个名为WebApiTwo的项目,它有两个项目,第一个是WebApi2项目,第二个是控制器类库。 如果我将控制器类库项目的引用添加到WebApi2项目,它不会按预期工作。 即如果我去http://mydevdomain.com/api/values我得到“没有findtypes匹配名为”价值观“的控制器。 对于第一个项目我没有做任何自定义设置,我没有: ControllerBuilder.Current.DefaultNamespaces.Add("MyClassLibraryProject.Controllers"); 在我的global.asax中,我还没有在他的两篇博文中实现StrathWeb提出的任何定制解决scheme,因为我认为它不再适用。 因为所有的工作只是通过将控制器项目的引用添加到WebApi项目中。 所以我希望所有的工作都一样的WebApi2 …但它不是。 有没有人真的想在WebAPi2中做这个?