Я работаю над проектом asp.net, в котором я пытаюсь вернуть идентификатор пользователя текущего пользователя, вошедшего в систему.Я написал имя пользователя в C #, поскольку я * не могу использовать встроенный элемент управления asp из-за других ограничений.Я хочу получить идентификатор пользователя из удаленной базы данных SQL, а затем использовать его в качестве переменной для другой функции.Это так, я могу назначить ID пользователя для анкеты, которая создается в функции ниже.Я попытался использовать membership.getUser
, но безуспешно.
РЕДАКТИРОВАТЬ: Когда я запускаю проект, я получаю ошибку "System.NullReferenceException: ссылка на объект не установлена на экземпляр объекта.", который указывает на string UserID = membershipUser.ProviderUserKey.ToString()
new_questionnaire.aspx.cs (сокращенно)
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Web.Security;
using Questionnaire;
public partial class new_questionnaire : System.Web.UI.Page
{
OsqarSQL sendData;
protected void NewQnrButton_Click(object sender, EventArgs e)
{
// Check if the input fields are empty.
if (QuestionnaireName.Text == "" || CustomerID.Text == "" || NumberOfQuest.Text == "")
{
lblError.Text = "Input fields cannot be blank";
}
// Parse input values to OscarSQL.
else
{
MembershipUser membershipUser = Membership.GetUser();
string userID = membershipUser.ProviderUserKey.ToString();
int testRet = sendData.InsertQuestionnaire(QuestionnaireName.Text, Int32.Parse(userID), Int32.Parse(NumberOfQuest.Text));
Session["QuestionnaireID"] = testRet;
Session["QuestionnaireName"] = QuestionnaireName.Text;
Response.Redirect("~/buildq/add_questions.aspx");
}
} // End NewQNRButton_Click
} // End new_questionnaire
Любая помощь будет принята с благодарностью.