私は、なぜこれが機能しないのかを理解するために1時間探していました。
WebAPIを備えたASP.Net MVC 5アプリケーションがあります。Request.GetOwinContext()。Authenticationを取得しようとしていますが、GetOwinContextを含める方法が見つかりません。これが私のコードです:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web;
using System.Web.Mvc;
using System.Web.Security;
using TaskPro.Models;
namespace TaskPro.Controllers.api
{
public class AccountController : ApiController
{
[HttpPost]
[AllowAnonymous]
public ReturnStatus Login(LoginViewModel model)
{
if (ModelState.IsValid)
{
var ctx = Request.GetOwinContext(); // <-- Can't find this
return ReturnStatus.ReturnStatusSuccess();
}
return base.ReturnStatusErrorsFromModelState(ModelState);
}
}
}
私が読んだことから、それはSystem.Net.Httpの一部であるはずですが、それを含めましたが、まだ解決していません。Ctrl-Spaceを押しても、IntelliSenseオプションは表示されません。
ここで何が欠けていますか?
System.Net.Http
名前空間が含まれているはずです。したがって.Owin
、using System.Net.Http
すでに使用しているforを使用する必要はありません。
System.Web.Http
名前空間ますが、System.Web.Http.Owin
dll からのものです。それを参照しましたか?