Hen*_*een 3 c# sql t-sql sql-server asp.net
我在数据库上有一个SQL表,其中有一列有Bit数据类型.我正在尝试在我的C#应用程序中定义一个方法,该方法从表中获取两个列并将它们用作参数.
这是代码
public void Edit_NAA_ApplicationsFirm(int ApplicationId, string UniversityOffer, bit Firm)
{
//This line declares a variable in which we store the actual values from NAA_Applications based on the associating ID
NAA_Applications AppFirm = Get_Applicant_Application(ApplicationId);
//Here we tell the application that the values edited are equal to the values within the table
AppFirm.Firm = Firm;
//Any of these changes are then saved.
_context.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
唯一的问题是程序一直在尝试将位转换为BitConverter.当我将其更改为位时,它将接受它作为数据类型的问题.
值得注意的是,我正在ASP.Net Framework解决方案中构建应用程序.
谁能告诉我它是什么我做错了?我只是指数据类型错了吗?
看起来你正在使用Entity Framework.
它将使用.NET boolean来表示T-SQL bit.对于任何其他数据访问方法来说,这也是一种明智的方法.boolean true将转换为1位字段,并转换false为0.
事实上,它甚至不止一次地记录了这是正确使用的.NET CLR类型.见https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/linq/sql-clr-type-mapping,https://msdn.microsoft.com/en-us/library /cc716729(v=vs.100).aspx和其他人.
所以在你的情况下bool Firm是合适的.
| 归档时间: |
|
| 查看次数: |
1337 次 |
| 最近记录: |