C# 如何使MySql和EF核心将tinyint或bit映射为boolean?
我有一个.NETCore项目,我使用EFCore构建我们的MySql数据库(db优先方法)。我无法使EF Core映射tinyint或bit为bool。它将tinyint映射为字节,将bit映射为short。有人有什么想法吗?您可以为实体框架生成的部分类编写元类 假设您有一个类调用状态,如bellowC# 如何使MySql和EF核心将tinyint或bit映射为boolean?,c#,mysql,.net-core,entity-framework-core,C#,Mysql,.net Core,Entity Framework Core,我有一个.NETCore项目,我使用EFCore构建我们的MySql数据库(db优先方法)。我无法使EF Core映射tinyint或bit为bool。它将tinyint映射为字节,将bit映射为short。有人有什么想法吗?您可以为实体框架生成的部分类编写元类 假设您有一个类调用状态,如bellow public class Status{ public int Value{get;set;} } 您可以像下面那样为它编写元类 [ModelMetadataType(typeof(TblUs
public class Status{
public int Value{get;set;}
}
您可以像下面那样为它编写元类
[ModelMetadataType(typeof(TblUserMetaData))]
public partial class Status
{
}
public class TblUserMetaData
{
public int Value{get;set;}
public bool ValueBool{get{
//gett Value variable by converting boolean
};
set{
//set Value variable by converting int
};
}
}
}
- 您需要将元类放置在同一名称空间中
从3.0开始,将
TINYINT(1)
映射到System.Boolean
是默认设置(),只要您的连接字符串包含treatinyasboolean=True
(如果未明确设置,这是默认设置)。您能向我们展示您的代码吗