C# DataTable DataView—数据库中的位值
在我的C#程序中,我已经将一个数据库表读入了一个DataTable,但是在将包含位值的列分配给布尔值时遇到了一些问题 以下是我目前的代码:C# DataTable DataView—数据库中的位值,c#,datatable,bit,dataview,C#,Datatable,Bit,Dataview,在我的C#程序中,我已经将一个数据库表读入了一个DataTable,但是在将包含位值的列分配给布尔值时遇到了一些问题 以下是我目前的代码: // Load and Sort Users DataTable DataTable datatableUsers = UserMethods.GetUsers().Tables["Users"]; datatableUsers.DefaultView.Sort = "Name"; /
// Load and Sort Users DataTable
DataTable datatableUsers = UserMethods.GetUsers().Tables["Users"];
datatableUsers.DefaultView.Sort = "Name";
// Filter Based on Search Box
datatableUsers.DefaultView.RowFilter = "Name LIKE '%" + user + "%' OR Username LIKE '%" + user + "%'"; ;
DataView dataviewUsers = datatableUsers.DefaultView;
// Loop Through Rows and Add UsersGrid to FlowLayoutPael
foreach (DataRowView datarowviewUsers in dataviewUsers)
{
var UsersGrid = new UsersGrid
{
ID = (int)datarowviewUsers["ID"],
Username = datarowviewUsers["Username"].ToString(),
User = datarowviewUsers["Name"].ToString(),
Admin = datarowviewUsers["Administrator"].ToString(),
};
flowlayoutpanelUsers.Controls.Add(UsersGrid);
UsersGrid.WasClicked += UsersGrid_WasClicked;
}
目前,我正在将Admin转换为字符串,并在“True”上进行匹配,但这会变得非常混乱,我更愿意将Admin设置为Boolean类型。我需要做什么?您可以使用内联if运算符。例如:
Admin = datarowviewUsers["Administrator"].ToString() == "True" ? true : false
根据deepee1的回答,我认为它返回了一点值
Admin = datarowviewUsers["Administrator"].ToString() == "1" ? true : false;
这给了我两个错误:名称“False”在当前上下文中不存在,名称“True”在当前上下文中不存在context@hshah我不小心大写了True和False。。。。它应该是真的和假的。那么它应该会起作用。。。我会编辑来修正的。啊,我也应该发现的。谢谢:)