.net – 将实体框架与Oracle伪布尔值一路行使
发布时间:2021-01-17 19:41:46 所属栏目:站长百科 来源:网络整理
导读:我正在研究在我的组织中行使Entity Framework.我们行使Oracle DBMS,因此(好或坏)行使Oracle中常见的“伪布尔”模式,而不是有一个布尔列(在Oracle中不存在),你有一个带有一个搜查的1字符列束缚逼迫它为“Y”或“N”. 因此,假如我但愿我的EF模子中的实体具有布
我正在研究在我的组织中行使Entity Framework.我们行使Oracle DBMS,因此(好或坏)行使Oracle中常见的“伪布尔”模式,而不是有一个布尔列(在Oracle中不存在),你有一个带有一个搜查的1字符列束缚逼迫它为“Y”或“N”. 因此,假如我但愿我的EF模子中的实体具有布尔属性,怎样将其映射到数据库列,个中“Y”暗示true,“N”暗示false?是否存在“转换器”的观念或实体框架中的某些内容可觉得我执行此操纵? 只是由于它也许会呈现,我知道EF只能与SQL Server一路行使.我将行使DevArt dotConnect for Oracle将EF与Oracle团结行使. 编辑 办理要领Devart dotConnect for Oracle具有NUMBER(1)列到System.Boolean的自动映射,它简化了这些列的事变 – 0对应于false,非零(默以为1) – 为true.无需其他操纵. 假如您但愿在char表单中保存布尔值,则必需选择以下要领之一: 1.保存映射到字符列的属性的字符串范例. 将一个boolean范例的附加包装属性添加到部门实体类,并响应地在getter和setter中将字符串值转换为boolean,反之亦然. 弱点:此包装器属性不能在LINQ to Entities中行使. 2.在表上建设一个视图,该视图将返回0或1而不是字符列中的值.可能,在此EntitySet的模子中建设一个DefiningQuery(在这种环境下不该将其添加到数据库中).在大大都环境下,必要将属性的范例从SSDL中的“char(1)”变动为“bool”,并在CSDL中将System.String变动为System.Boolean.您应该编写一组存储进程来与您的实体执行CUD操纵,并将这些进程映射为可更新的实体. 弱点:做了许多事变.(编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐
热点阅读