Я пытаюсь узнать, вошел ли пользователь в свой веб-сайт asp.net через спокойный веб-сервис, используя Membership.GetUser (). ProviderKey () в контроллере API, но он возвращает значение NULL, даже если я вошел в систему.
Вот мой ApiController:
`
открытый класс EmployeeController: ApiController
{
// GET api/Employee/
public string Get()
{
string error = "";
Employee employee = new Employee();
Guid userId = new Guid();
userId = (Guid)Membership.GetUser().ProviderUserKey;
employee = EmployeeAdapter.GetEmployees(out error).Where(c => c.aspnet_Users.UserId == userId).FirstOrDefault();
string result = JsonConvert.SerializeObject(employee);
return result;
}
}`
Вот код моего веб-сайта (Default.aspx.cs), использующий веб-сервис:
private void CheckEmployee()
{
// use Get method in Employee rest web service to know signed in employee identity
string url = ApiUrl + "Employee/";
var webrequest = (HttpWebRequest)System.Net.WebRequest.Create(url);
webrequest.Method = "Get";
var response = webrequest.GetResponse();
using (var reader = new System.IO.StreamReader(response.GetResponseStream()))
{
var result = reader.ReadToEnd();
employee = JsonConvert.DeserializeObject<Employee>(result);
}
// use Get method in Employee rest web service to know signed in employee identity
}