我有一个项目,要求我的URL在路径中有点.例如,我可能有一个URL,例如www.example.com/people/michael.phelps
带点的网址生成404.我的路由很好.如果我通过michaelphelps,没有圆点,那么一切正常.如果我添加点我得到404错误.示例站点在带有IIS8 Express的Windows 7上运行.URLScan未运行.
我尝试将以下内容添加到我的web.config中:
<security>
<requestFiltering allowDoubleEscaping="true"/>
</security>
Run Code Online (Sandbox Code Playgroud)
不幸的是,没有什么区别.我刚收到404.0 Not Found错误.
这是一个MVC4项目,但我不认为这是相关的.我的路由工作正常,我期望的参数在那里,直到它们包含一个点.
我需要配置什么才能在网址中加点?
我意识到会话和REST并不完全齐头并进,但是使用新的Web API无法访问会话状态吗?HttpContext.Current.Session
永远是空的.
我正在尝试从Web API发布一个JsonObject
使用HttpClient
.我不太确定如何解决这个问题,并且在示例代码方面找不到多少内容.
这是我到目前为止所拥有的:
var myObject = (dynamic)new JsonObject();
myObject.Data = "some data";
myObject.Data2 = "some more data";
HttpClient httpClient = new HttpClient("myurl");
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = httpClient.Post("", ???);
Run Code Online (Sandbox Code Playgroud)
我想我需要把我JsonObject
当成一个StreamContent
但是我已经挂了这一步.
我最近从Visual Studio 2010升级到Visual Studio 2012 RC.安装程序还会安装IIS 8 Express,Visual Studio现在将其用作默认Web服务器.
IIS 8阻止了我使用PUT AND DELETE谓词的WEB API请求.IIS返回405错误,The requested resource does not support http method 'PUT'
.
我知道过去人们对此有疑问,Stack Overflow上有几条关于它的消息.使用IIS 7 Express,解决方案是卸载WebDav.不幸的是,我没有看到任何与IIS 8相关的方法.
我已经尝试从applicationhost.config编辑出WebDav部分,但这没有帮助.例如,我<add name="WebDAVModule" image="%IIS_BIN%\webdav.dll" />
从配置文件中删除了.
我花了很长时间才研究这个问题.必须有一种简单的方法来启用PUT和DELETE?
在过去处理密码时,我总是在我的数据存储中分别存储盐和散列密码.今天我想更新一些遗留代码以使用RFC 2898哈希值.我偶然发现了这些Crypto.Hash
方法System.Web.Helpers
.看起来这些将为我完成大部分繁重的工作.还有GenerateSalt()
,HashPassword()
和VerifyHashedPassword()
方法.该HashPassword()
和VerifyHashedPassword()
方法不拿盐值.HashPassword()
方法的MSDN文档说:
"生成的哈希字节流的格式是{0x00,salt,subkey},在返回之前是base-64编码的."
我需要担心盐吗?文档似乎说会自动生成一个salt并存储在base-64编码值中?它是否正确?我需要存储的是从中返回的字符串HashPassword()
?
我有一个模型如下:
public class User : System.Web.Security.MembershipUser
{
public int UserId { get; set; }
public string SomeProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
生成数据库时,我希望实体框架忽略MembershipUser,只生成一个名为User的表,其中包含User类中的两个属性.我试过以下无济于事.
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Ignore<System.Web.Security.MembershipUser>();
}
Run Code Online (Sandbox Code Playgroud) 我意识到构造函数注入是首选,但我很好奇如何在使用另一种注入形式时使用Ninject的上下文"命名绑定".
具体来说,在使用DependencyResolver或属性注入时,如何执行以下操作.
public MyService([Named("Alpha")] IRepository repository)
{
this.repository = repository;
}
Run Code Online (Sandbox Code Playgroud) 使用vanilla MVC,我可以使用TryValidateModel重新验证我的模型.TryValidateModel方法似乎不适用于WebAPI.如何在使用WebAPI时重新验证我的模型?
我需要一些帮助,为在新的ASP.NET Web API上构建的休息服务实现OAuth 2提供程序.我知道Stack Overflow上有一些类似的问题,但它们或多或少都是指向OAuth库的链接.我真正喜欢的是一些示例代码或示例项目来启动我.谁能指出我正确的方向?
我正在看DotNotOpenAuth,我相信4.0 beta支持OAuth 2提供商.不幸的是,我似乎无法找到任何代码来演示如何实现它.
我需要一些帮助实际上是让2.0提供商启动并运行.一旦我有了它,它应该很容易通过HTTP模块或过滤器集成它.
我对API到API通信的2腿认证很感兴趣.
使用 SignalR 集线器可以在组中添加或删除客户端。一个客户端可以属于多个组。是否可以将客户端从其当前所属的每个组中删除?我想我正在寻找的是类似的东西Clients[*allgroups*].leave(Context.ConnectionId)
asp.net ×8
c# ×3
asp.net-mvc ×2
iis ×2
iis-8 ×2
c#-4.0 ×1
cryptography ×1
iis-7 ×1
iis-express ×1
ninject ×1
signalr ×1
wcf ×1
wcf-web-api ×1