如何使用Entityxcode 使用frameworkk.Extended

EntityFramework.Extended
[Deprecated]EntityFramework.Extended
[Deprecated]
Use Entity Framework Plus instead:
No longer supported since 2015
Install-Package EntityFramework.Extended -Version 6.1.0.168
dotnet add package EntityFramework.Extended --version 6.1.0.168
paket add EntityFramework.Extended --version 6.1.0.168
The NuGet Team does not provide support for this client.
Please contact its
for support.
(&= 6.1.0)
Last updated
<span data-datetime="T18:01:50./9/2015
<span data-datetime="T15:42:50./6/2015
<span data-datetime="T21:09:45./12/2014
<span data-datetime="T12:07:04./5/2014
<span data-datetime="T17:53:22./21/2014
<span data-datetime="T01:19:36./28/2014
<span data-datetime="T14:14:13./30/2013
<span data-datetime="T13:31:29./5/2013
<span data-datetime="T21:16:54./1/2013
<span data-datetime="T10:39:35./18/2013
<span data-datetime="T16:26:52./18/2012
<span data-datetime="T02:15:14./5/2012
<span data-datetime="T22:28:49./28/2012
<span data-datetime="T18:31:06./26/2012
<span data-datetime="T13:27:38./27/2012
<span data-datetime="T16:03:25./16/2012
<span data-datetime="T14:33:39./15/2012
<span data-datetime="T17:16:48./24/2012
<span data-datetime="T20:43:36./15/2012
<span data-datetime="T15:56:31./7/2012
<span data-datetime="T22:24:09./3/2012
<span data-datetime="T20:28:11./20/2012
<span data-datetime="T02:47:53./21/2012
<span data-datetime="T02:16:29./20/2011
<span data-datetime="T16:41:38./18/2011
<span data-datetime="T06:08:51./17/2011
<span data-datetime="T03:58:46./6/2011entityframework.extended 这个是个很好的扩展,不过由于默认是配置成MSSQL的,今天在github上面 看到一个解决方案,亲测可用,下面贴代码
1.在DbContext 修改默认的数据库架构
public EcsDbContext(string connectionStringName)
: base(connectionStringName)
Configuration.ProxyCreationEnabled = false;
2.添加DbContextConfiguration
public class DbContextConfiguration : DbConfiguration
public DbContextConfiguration()
EntityFramework.Locator.Current.Register&EntityFramework.Batch.IBatchRunner&(() =& new MySqlBatchRunner());
&关于EF配置MySql请移步
阅读(...) 评论()1.在使用EntityFramework访问Mysql的时候,使用迁移来生成数据库或者更新数据库时候会遇到一些问题
2.EntityFramework.Extended对Mysql的支持不是很完全,其中修改是无法直接使用的需要做一些处理
3.EntityFramework.Extended如何跟EntityFramework其他的操作在一个事物里面(针对网友&问题)
1.首先解决第一个问题
准备条件:用Nuget下载Mysql.Data.Entity(可以将依赖连同下载)
我们采用Code First的形式来建立了实体。然后新建自己的DbContext类。
这个直接使用命令
&Enable-Migrations -ProjectName MedicalInsurance.Domain
&Update-DataBase -ProjectName MedicalInsurance.Domain&
来生成Migration文件
修改Configuration代码如下:
public Configuration()
AutomaticMigrationsEnabled = true;
AutomaticMigrationDataLossAllowed = true;
在使用如下命令来迁移生成数据库(执行命令的时候一定要选择dbcontext所在的项目)
&&Add-Migration init
&Update-DataBase -ProjectName MedicalInsurance.Domain&
&发现出现问题问题
修改DbContext文件
在dbcontext加上如图的特性
&在执行& Add-Migration init
这个时候已经执行成功并且生成了相应的迁移文件
再来执行&Update-DataBase -ProjectName MedicalInsurance.Domain 将迁移更新到数据库中
如果你要修改实体的字段,或者增加实体的字段,或者增加实体,修改完成之后
&&Add-Migration updatedb
&&Update-DataBase -ProjectName&Alien.ClinicSystem.Data
这样就可以同步更新到数据库。(在此就不做详细的步骤了)
2.现在来解决第二个问题
准备条件:用Nuget下载EntityFramework.Extended
关于EntityFramework.Extended 的具体使用 请自行是搜索。在这里我只说明Update遇到的问题以及解决办法。
我们先来执行一下Update操作看看有什么问题。在这里我随便建个个Controller来测试Update(因为我这个项目是mvc的项目)。
我在数据库手动加了条数据:
现在我们来修改这条数据(将编号为1 的用户电话修改成&&)
&执行开看下效果:
出现以上错误,大概意思就是生成的sql语句不对。
如何解决呢。
使用以下方式完美的解决。
首先在DbContext类中修改代码(红色标注):
[DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]
public class ClinicSystemContext : DbContext
public ClinicSystemContext() : base("mysqldb")
Database.SetInitializer&ClinicSystemContext&(null);
public DbSet&User& Users { set; get; }
public DbSet&Charge& Charges { set; get; }
public DbSet&ChargeItem& ChargeItems { set; get; }
public DbSet&Clinic& Clinics { set; get; }
public DbSet&Diagnos& Diagnoses { set; get; }
public DbSet&Disease& Diseases { set; get; }
public DbSet&Drug& Drugs { set; get; }
public DbSet&MaterialInfo& MaterialInfos { set; get; }
public DbSet&Recipe& Recipes { set; get; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
modelBuilder.HasDefaultSchema("");
//增加配置 migration 的注释掉
运行的时候拿掉注释
base.OnModelCreating(modelBuilder);
然后在项目的启动的入口增加如下代码(我这是mvc的项目所以在Application_Start中加):
此时再来执行看看能不能修改。
没有报错。看下数据库内容有没有修改。
发现数据库的内容已经修改
&3.上面第三个问题是网友&提出的。在此给出我的解决方案。
在ef中开启事物,即可解决此问题代码如下
using (ClinicSystemContext db = new ClinicSystemContext())
using (var tran = db.Database.BeginTransaction())
User user = new Domain.User
UserName = "ddd",
CreatedDate = DateTime.Now,
ModifyDate = DateTime.Now,
CreatorId = 1,
Password = "123456",
Role = Domain.Enum.Role.Doctor,
Phone = "6666666"
db.Users.Add(user);
db.SaveChanges();
int ret = db.Users.Where(x =& x.Id == 1).Update(x =& new User { Phone = "" });
tran.Commit();
catch (Exception ex)
tran.Rollback();
亲自测试只有tran.Commit();之后Update才会更新 到数据库,如果抛出异常,tran.Rollbak();则update同样不更新到数据库。
在使用ef.Extened时候,在修改实体,需要迁移数据库的时候,需要想将DbContext里面的
modelBuilder.HasDefaultSchema("");
//增加配置 migration 的注释掉
运行的时候拿掉注释
注释。迁移完成之后在去掉注释。
&以上就是我在做项目中遇到的问题,以及解决办法,欢迎打击批评指正。
阅读(...) 评论()&>&EntityFramework.Extended支持MySql数据库
EntityFramework.Extended支持MySql数据库
上传大小:5KB
EntityFramework.Extended,仅支持SqlServer,自己改的支持Mysql的
综合评分:5(8位用户评分)
下载个数:
{%username%}回复{%com_username%}{%time%}\
/*点击出现回复框*/
$(".respond_btn").on("click", function (e) {
$(this).parents(".rightLi").children(".respond_box").show();
e.stopPropagation();
$(".cancel_res").on("click", function (e) {
$(this).parents(".res_b").siblings(".res_area").val("");
$(this).parents(".respond_box").hide();
e.stopPropagation();
/*删除评论*/
$(".del_comment_c").on("click", function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_invalid/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parents(".conLi").remove();
alert(data.msg);
$(".res_btn").click(function (e) {
var parentWrap = $(this).parents(".respond_box"),
q = parentWrap.find(".form1").serializeArray(),
resStr = $.trim(parentWrap.find(".res_area_r").val());
console.log(q);
//var res_area_r = $.trim($(".res_area_r").val());
if (resStr == '') {
$(".res_text").css({color: "red"});
$.post("/index.php/comment/do_comment_reply/", q,
function (data) {
if (data.succ == 1) {
var $target,
evt = e || window.
$target = $(evt.target || evt.srcElement);
var $dd = $target.parents('dd');
var $wrapReply = $dd.find('.respond_box');
console.log($wrapReply);
//var mess = $(".res_area_r").val();
var mess = resS
var str = str.replace(/{%header%}/g, data.header)
.replace(/{%href%}/g, 'http://' + window.location.host + '/user/' + data.username)
.replace(/{%username%}/g, data.username)
.replace(/{%com_username%}/g, data.com_username)
.replace(/{%time%}/g, data.time)
.replace(/{%id%}/g, data.id)
.replace(/{%mess%}/g, mess);
$dd.after(str);
$(".respond_box").hide();
$(".res_area_r").val("");
$(".res_area").val("");
$wrapReply.hide();
alert(data.msg);
}, "json");
/*删除回复*/
$(".rightLi").on("click", '.del_comment_r', function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_comment_del/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parent().parent().parent().parent().parent().remove();
$(e.target).parents('.res_list').remove()
alert(data.msg);
//填充回复
function KeyP(v) {
var parentWrap = $(v).parents(".respond_box");
parentWrap.find(".res_area_r").val($.trim(parentWrap.find(".res_area").val()));
评论共有7条
这个东西还可以,谢谢分享
可以用,good
看不怎么懂
综合评分:
积分/C币:3
VIP会员动态
CSDN下载频道资源及相关规则调整公告V11.10
下载频道用户反馈专区
下载频道积分规则调整V1710.18
spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip
资源所需积分/C币
当前拥有积分
当前拥有C币
输入下载码
为了良好体验,不建议使用迅雷下载
EntityFramework.Extended支持MySql数据库
会员到期时间:
剩余下载个数:
剩余积分:0
为了良好体验,不建议使用迅雷下载
积分不足!
资源所需积分/C币
当前拥有积分
您可以选择
程序员的必选
绿色安全资源
资源所需积分/C币
当前拥有积分
当前拥有C币
(仅够下载10个资源)
为了良好体验,不建议使用迅雷下载
资源所需积分/C币
当前拥有积分
当前拥有C币
为了良好体验,不建议使用迅雷下载
资源所需积分/C币
当前拥有积分
当前拥有C币
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
你当前的下载分为234。
你还不是VIP会员
开通VIP会员权限,免积分下载
你下载资源过于频繁,请输入验证码
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
若举报审核通过,可返还被扣除的积分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
EntityFramework.Extended支持MySql数据库他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 xcode 使用framework 的文章

 

随机推荐