【c# – 在4.5框架WebApi项目中使用2.0框架程序集】教程文章相关的互联网学习教程文章

C#WebApi重构选择Linq【代码】

我目前正在Visual Studio 2015中编写C#Web Api.我实际上是在复制很多代码.public class APIController : ApiController {[HttpGet][Route("api/drones")]public HttpResponseMessage getDrones(){var drones = db.drones.Select(d => new DroneDTO{iddrones = d.iddrones,//more stuff});HttpResponseMessage res = Request.CreateResponse(HttpStatusCode.OK, drones);return res;}[HttpGet][Route("api/drones/{id}")]public Htt...

c# – ASP.NET WebApi不接收帖子数据【代码】

我需要使用WebApi接收一些字符串和二进制数据.我用这种方式创建了一个控制器:[HttpPost]public void Post(byte[] buffer){// Some code goes here}这是溃败:routes.MapHttpRoute(name: "CuscarD95B",routeTemplate: "D95B/{controller}",defaults: new { buffer = RouteParameter.Optional },constraints: new { controller = @"Cuscar" }现在当我尝试发布一些数据时,缓冲区总是byte [0](零长度数组).没有数据传递给控制器??. 任...

c# – 只有在使用统一DI回收应用程序池时,webapi调用才会失败【代码】

我正在调用一个web api服务,该服务仅在我第一次回收应用程序池时失败.之后所有通话都运转正常. 这个过程是这样的.. 呼叫服务 – >好的 呼叫服务 – >好的 呼叫服务 – >好的 转到iis并回收应用程序池(我等待10秒) 呼叫服务 – >发生内部服务器错误.请稍后再试. 呼叫服务 – >好的 呼叫服务 – >好的 呼叫服务 – >好的 …转到iis并回收应用程序池(我等待10秒)呼叫服务 – >发生内部服务器错误.请稍后再试. 呼叫服务 – >好的 呼叫服...

c# – WebApi PushStreamContent错误处理【代码】

使用Pushstreamcontent时处理错误的正确方法是什么?我使用Pushstreamcontent将数据直接从数据库传输到客户端.在客户端上,我在收到结果时使用HttpCompletionOption.ResponseHeadersRead. 在数据不可用的情况下,我想返回例如HttpStatusCode 404(Not Found).目前我只在执行lambda(CopyBinaryValueToResponseStream)期间检测到没有数据.那个时候我不能再改变HttpResponeMessage的状态了. 那么处理此类案件的正确方法是什么?我想提前避...

c# – 使用Auth标头(如webAPI)但在MVC中进行身份验证【代码】

好吧,读这篇文章的人可能都知道(我也是如此)WebAPI如何工作以及如何使用WebAPI和Identity框架构建应用程序我可以构建一个http请求,添加一个auth标头,应用程序将通过阅读auth知道我是谁头. 这就是所谓的“无状态”API调用,其中接收调用的API的所有内容都被赋予了确定用户身份所需的所有内容,因此可以对用户进行身份验证并对其请求进行“无状态”操作. ….. 我想在MVC(而不是Web API)中使用这种完全相同的行为. 我希望以前没有对此应...

c# – WebApi和ADFS集成【代码】

我创建了一个“测试”项目,我正在使用.Net 4.6 WebApi,我希望使用ADFS集成身份验证 – 类似于this post.我从一个角度项目调用api并使用以下代码我是能够获得授权标题:string authority = ConfigurationManager.AppSettings["adfsEndpoint"].ToString();string resourceURI = "https://localhost:44388/";string clientID = "someguid";string clientReturnURI = "http://localhost:55695/";var ac = new AuthenticationContext(au...

c# – 路由参数在WebApi中不起作用【代码】

下面是WebAPI.[RoutePrefix("api/customer")] public class CustomerController : ApiController {[Route("{id:int:min(1)}/")]public HttpResponseMessage Get(int id){//my stuff} }如果我传递任何小于1的值(比如说0或-1).它返回响应体为NUll,HttpStatusCode = 200 预期的响应是:HttpStatus Code = 404. 但是,如果我修改我的路线如下.[RoutePrefix("api/customer")] public class CustomerController : ApiController {[Route("...

c# – OData WebApi V4 .net – 自定义序列化【代码】

我需要创建一个Serializer来支持以下所有任务: >删除空属性>删除空列表 我注意到ODataMediaTypeFormatter的语法已被更改. 而我在将序列化提供程序添加到管道时遇到问题. 这是我尝试过的: 在WebApiConfig.cs上:var odataFormatters = ODataMediaTypeFormatters.Create(); odataFormatters.Add(new MyDataMediaTypeFormatter()); config.Formatters.InsertRange(0, odataFormatters);另外,我创建了以下Odatameditatypeformatter:...

c# – 控制器中自定义方法的WebApi路由【代码】

我最近选择了ASP.NET Web API的东西,虽然我已经破解了授权和身份验证,但我无法破解路由.这是一场噩梦! 我用AuthenticationController创建了一个Authenticate()方法.我将[HttpGet]属性添加到Authenticate(),但每当我点击API时,我得到404. 这是我目前的WebApiConfig: – public static void Register(HttpConfiguration config) {config.Routes.MapHttpRoute("DefaultApiWithId", "{controller}/{id}", new { id = RouteParameter....

c# – Ninject WebAPI.SelfHost负载下的性能问题(每隔几秒钟几秒钟)

我在我的WebAPI Self Hosted应用程序中进行了一些负载测试,发现Ninject的Cache Pruning会使应用程序停顿几秒钟(屏幕截图中的加载分析). 如何避免缓存修剪停止请求? 我所做的就是设置HttpSelfHostConfiguration.DependencyResolver = new NinjectDependencyResolver(new StandardKernel())(配置省略) 有没有办法在请求结束时删除对象? 更新: 从这里,https://github.com/ninject/ninject/issues/37,似乎只能期望在Ninject.Web和Ni...

Mvc.Mailer发送空体邮件C#webApi【代码】

我正在使用MVCMailer并尝试从WebApi发送邮件,但邮件总是以空消息到达. 视图位于/Views/Account/CreateUser.cshtml中 这是我的代码public class Account: MailerBase {public MvcMailMessage CreateUser(CreateNewAccount model){return Populate(x =>{x.Subject = model.Subject;x.ViewName = "CreateUser";x.To.Add(model.Email);ViewData.Model = model;});}当我从经典MVC控制器发送电子邮件时,电子邮件正确到达,但从APiControle...

c# – 在4.5框架WebApi项目中使用2.0框架程序集【代码】

我有一个包含所有逻辑的’核心’程序集,它使用用2.0编写的第三方组件.当我尝试运行暴露核心功能的WebApi(4.0)项目(4.5框架)时,我收到以下错误: 无法加载文件或程序集“Core”或其依赖项之一.尝试加载格式不正确的程序. 我创建了一个测试控制台应用程序,并将app.config中的启动标记更改为使用旧版运行时,它可以正常工作.<startup useLegacyV2RuntimeActivationPolicy="true"><supportedRuntime version="v4.0" sku=".NETFramework,...

c# – ASP.NET MVC登录客户端/ ASP.NET WebAPI身份验证/授权服务器分离【代码】

我正在尝试将ASP.Net MVC登录客户端与将使用令牌承载的身份验证服务器分开,并将包含所有身份验证业务逻辑.这两件事情分为2个不同的webroles 我已经完成了使用Identity 2.0的当前实现. UserManager和UserStore位于AuthServer中,登录客户端对userId一无所知.只有UserName. 目前,为了在客户端项目中生成用户的声明,我使用此实现:public async Task<ClaimsIdentity> GenerateUserIdentityAsync(){ // Note the authenticationType mus...

c# – Method上的Webapi参数为null【代码】

我试图将JSON格式的数据对象(WorkOrders)列表发回给我的Webapi控制器,这非常好用,除了数据对象参数(savemodel)在点击webapi时为空的轻微缺陷控制器.这是来自JS的剪辑(插槽是模拟数据)var slots = []; slots.push({ 'WorkOrder': 'XX21', 'OrderDate': '2015-10-11 00:00:00', 'Slot': '1', 'SageRef': 'HS11' });slots.push({ 'WorkOrder': 'XX22', 'OrderDate': '2015-10-12 00:00:00', 'Slot': '2', 'SageRef': 'HS12' })slot...

c# – 使用identityserver将我的webapi与解析服务器连接起来

我有一个Asp.Net WebApi,它提供一些本机和javascript平台及其数据. 我有identityserver3作为此WebApi的身份验证/授权模块. 例如,我在WebApi和它的本机客户端之间的通信中使用了隐式流. 现在我想将这个WebApi系统与Facebook Parse服务器系统集成. 例如: 如果解析服务器数据库中已有用户并登录到我的身份服务器,我可以从WebApi向Parse服务器发起请求并将数据返回给它. 我知道使用oAuth2和OpenId进行解析但是所需的步骤是什么,或者最...

WEBAPI - 相关标签