나는 사용자가 자신의 고객의 기록을 검색하고 표시하는 판매 페이지를 가지고 있습니다. 이 페이지를 사용할 여러 사용자가 있습니다. 내 문제는 어떻게 사용자가 자신의 Userid 통해 사용자의 레코드를 표시합니다 로그인 할 때 페이지를 만드는 방법입니다.사용자 ID별로 레코드를 선택하고 표시하려면 어떻게합니까?
if(!IsPostBack)
{
Session["UserId"] = User.Identity.Name;
// using (var connection = new SqlConnection("mtbase"))
{
string value = null;
if (HttpContext.Current.User != null)
{
value = HttpContext.Current.User.Identity.Name;
}
else
{
value = HttpContext.Current.Request.LogonUserIdentity.Name;
}
var split = value.Split(new char[] { '\\' });
var UserId = split[split.Length - 1];
using (var cmd = new SqlCommand("SELECT * FROM FixPrice WHERE [email protected]", new SqlConnection("mtbase")))
{
// Add your parameter before opening the connection
cmd.Parameters.AddWithValue("@UserId", UserId);
// Open connection
cmd.Connection.Open();
using (var reader = cmd.ExecuteReader())
{
}
cmd.Connection.Close();
}
}
}
}
내 데이터베이스 테이블 :
테이블 이름 FixPrice
아이디 INT (PRIMARY KEY)
날짜 datatime
나는 다음과 같이 귀하의 예를 적용 관리 nvarchar
카테고리 NVARCHAR
브랜드 VARCHAR
가격 돈
수량 플로트
합계 돈
사용자 아이디 INT (FOREIGN KEY)
암 여전히 같은 오류가 발생 :
초기화 문자열의 형식이 인덱스 0에서 시작하는 사양을 준수하지 않습니다.
설명 현재 웹 요청을 실행하는 동안 처리되지 않은 예외가 발생했습니다. 오류 및 코드에서 시작된 위치에 대한 자세한 정보는 스택 추적을 검토하십시오.
예외 정보 : System.ArgumentException이 :
행 31 : var에 분할 = value.Split (새 숯불 [초기화 문자열의 형식이 인덱스 0
소스 오류에서 시작하는 사양에 맞지 않습니다 ] { '\'}); 줄 32 : var UserId = split [split.Length - 1]; 라인 33 : using (var cmd = new SqlCommand ("SELECT * FROM FixPrice WHERE UserId = @ UserId", 새 SqlConnection ("Skyformatbase"))) 라인 34 : { 라인 35 : 연결
소스 파일 : C : \ 사용자 \ migold 비주얼 스튜디오 \ 문서 \ 2013 \ 웹 사이트는 SKYAPP \ DashBoard.aspx.cs 라인 \ : 33
지금까지 수행 한 조치를 제공해 주시겠습니까? –
사용자가 응용 프로그램에 로그인하면 해당 사용자의 고유 ID를 저장해야합니다. 사용자가 판매 페이지에 착륙하면 고유 ID를 사용하여 해당 사용자의 결과를 표시 할 수 있습니다. –
SQL/linq 'where'명령을 찾습니다. –