Dictionary<string, DataRow> dtUsers;
using (DataSet dsmyTable = DbConnection.db_Select_Query
("use myDb select * from myTable"))
{
dtUsers= dsmyTable .Tables[0].AsEnumerable().
ToDictionary(row => row.Field<string>("UserId"));
}
UserId是一个smallint
列但是我想把它转换成字符串
如何修改上面的linq ?
不能将int
强制转换为字符串,但可以获得int:
dtUsers= dsmyTable .Tables[0].AsEnumerable().
ToDictionary(row => row.Field<short>("UserId").ToString());
但是,您应该仅为显示目的而这样做。一般来说,您会希望尽可能长时间地保留整型,因为处理整型要比到处从字符串解析它容易得多。
仅使用ToString()
方法。当然,这只是为了表示您的smallint
专栏。
dtUsers= dsmyTable .Tables[0].AsEnumerable().
ToDictionary(row => row.Field<short>("UserId").ToString());