다음과 같은 방법으로 dapper 및 저장 프로 시저를 사용하여 동적 결과를 반환하려고합니다. 올바른 방법으로하고 있습니까?mvc에서 dapper를 사용하는 동적 결과
내 저장 프로 시저가 무엇using (IDbConnection dbConnection = Connection)
{
dbConnection.Open();
var result = dbConnection.Query<dynamic>("LMSSP_GetSelectedTableData",
new
{
TableName = TableName,
LangaugeID = AppTenant.SelectedLanguageID,
UserID = AppTenant.UserID
}, commandType: CommandType.StoredProcedure).ToList();
if (result != null)
{
// Added just for checking the data
foreach (var item in (IDictionary<string, object>)result.FirstOrDefault())
{
string key = item.Key;
string value = item.Value.ToString();
}
}
}
, 나는 그것이 결과가 반환 모든 테이블 이름을 전달하고 기반으로합니다/records.So 분명히 기록의 내 번호는 열이 전달 된 테이블 이름에 따라 변경 될 것입니다 .
나는 이것을 달성하기 위해 동적 키워드와 함께 dapper를 사용했습니다.
그래서 내 질문은 모델로보기 위해이 데이터를 전달하고 속성/열 데이터 형식에 따라보기에서 컨트롤을 렌더링 할 수 있습니다. 열 또는 PropertyInfo의 데이터 형식을 가져올 수 있습니까?
그러나 dapper가 데이터베이스에서 레코드를 검색 할 때 dapper 행 유형으로 반환됩니까?
내게는 저장된 프로 시저가 입력에 따라 다른 스키마를 반환하는 경우 잘못된 데이터베이스 디자인을 나타냅니다. – Rob
@Rob 이는 몇 가지 테이블, 주로 우리의 손에 있지만 클라이언트가 아닌 시스템 테이블에 불과합니다. 해결책을 말해 주시겠습니까? – Rohit