我创建了一个数据视图,它可以从SQL Server中提取数据,并允许我设置文本框的文本。
DataView dv = (DataView)SQLDSRecordPageTest2.Select(DataSourceSelectArguments.Empty);
foreach (DataRowView drv in dv)
{
TBID.Text = drv["RecordID"].ToString();
TBRecordTitle.Text = drv["RecordTitle"].ToString();
TBRecordCreator.Text = drv["Name"].ToString();
这对我来说很好。
我遇到的困难是将int数据分配给变量,以便我可以做一些逻辑。
我试过了
iRecordOrigin = 1;
iRecordOrigin = drv.GetValue<int>("RecordOriginID");
iRecordOrigin = drv["RecordOriginID"];
但是intellisense抱怨并且我知道我做错了什么或者我得到编译器/运行时错误。
如何将DataRowView中的字段分配给变量?
我想知道这个:
整数 串 和 日期
数据类型
我尝试使用铸造,但没有任何乐趣。
此致
萨姆
答案 0 :(得分:2)
这适用于您提到的任何类型。
如果SQL中的字段未作为本机SQL类型(例如int
)返回,则可以使用Convert.ToInt32
Convert.ToInt32(drv["RecordOriginID"]);
您也可以更改您的sql以返回正确的类型,例如int
,然后将其转换为Int32
int i = (int) drv["RecordOriginID"];
答案 1 :(得分:1)
转换它。
int iRecordOrigin = Convert.ToInt32(drv["RecordOriginID"]);