Общее назначение кода Предоставленный код берет имя пользователя и пароль со страницы входа в систему через angularJS.Он передается функции, в которой находится сценарий AJAX.Затем данные передаются на сервер и должны сравниваться с данными в базе данных.Если все идет хорошо, он должен отправить идентификатор сеанса и имя пользователя в сеанс для целей аутентификации и авторизации.
Назначение предоставленного сценария: Я пытаюсь передать объект JSON на сторону сервера.У меня отключен JSON, но я извлекаю его из функции и получаю значения из объекта.
Что я пробовал ранее: Я пытался использовать класс спискаи строка.Я покажу список и где я застрял и строку.
AJAX:
login: function (username, password) {
var cred = { "uname": username, "pass": password };
var response = $http({
method: "post",
url: "/Login/CheckUser",
data: JSON.stringify({ model: cred }),
contentType: 'application/json; charset=utf-8',
dataType: "JSON",
success: function (msg) {
if (msg) {
console.log("success");
}
},
error: function (msg) {
if (msg) {
console.log("fail");
}
}
с использованием метода строки:
[HttpPost]
public string CheckUser(String umodel)
{
Console.Write(umodel);
string modelCheck = umodel;
/*not sure how to parse from here */
Список:
public class userCred
{
public string uname { get; set; }
public string pass { get; set; }
public List<userCred> userCreds = new List<userCred>();
}
[HttpPost]
public string CheckUser(List<userCred> umodel)
{
string uname = "";
string pword = "";
/*Not sure how to access values from JSON here */
/* Begin Assigning values
* Validation check
*/
using (localtestEntities entity = new localtestEntities())
{
var user = entity.users.Where(u => u.uname == uname).FirstOrDefault();
if (user != null)
{
if (pword == user.pw)
{
Session["LoginID"] = user.id;
Session["Username"] = user.fname + ' ' + user.lname;
return user.id.ToString();
}
else
{
return "0";
}
}
else
{
return "0";
}
}
/* Begin Assigning values */
} //End Check User
Ожидаемый результат будет успешно передавать объект JSON на сервер для сравнения данных в базе данных и возвращать 0 или новый сеанс в зависимости от того, совпадают они или нет.