- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个简单的国家/地区实体,它是由 Entity Framework 4 使用 VS 2010 RC 生成的。它看起来类似于下面的 POCO。
public class Company
{
public int ID { get; set; }
public string Name { get; set; }
public string ISOCode { get; set; }
public boolean Active { get; set; }
}
我的存储库代码如下。 “db”是在构造函数中初始化的我的上下文。
public void EditCountry(Country countryToEdit)
{
db.Countries.Attach(new Country { ID = countryToEdit.ID });
db.Countries.ApplyCurrentValues(countryToEdit);
db.SaveChanges();
}
将 CountryToEdit 中的 Active 字段从 false 更改为 true 会生成以下 SQL
update [dbo].[Countries]
set [Name] = @0, [ISOCode] = @1, [Active] = @2
where ([ID] = @3)
@0 nvarchar(256),@1 nvarchar(12),@2 bit,@3 int,@0='Algeria',@1='DZ',@2=1,@3=4
这是预期的。
如果我将 CountryToEdit 中的 Active 字段从 true 更改为 false,则会生成以下 SQL
update [dbo].[Countries]
set [Name] = @0, [ISOCode] = @1
where ([ID] = @2)
@0 nvarchar(256),@1 nvarchar(12),@2 int,@0='Afghanistann',@1='AF',@2=1
没有尝试更新事件字段。
最佳答案
这个ApplyCurrentValues in EF 4问题有答案。
应该是
db.Countries.Attach(db.Countries.Single(c => c.ID == countryToEdit.ID));
如果附加空白 stub 对象,则 bool 字段将初始化为 false。 ApplyCurrentValues 调用发现 stub 和编辑对象之间的 bool 值没有变化。
上面的代码添加了另一个数据库查询,但我可以接受。
关于entity-framework - Entity Framework 4 - 并不总是使用 ApplyCurrentValues 更新 bool 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2264313/
我有一个实体,我按如下方式检索并与上下文分离: ctx.Reviews.MergeOption = MergeOption.NoTracking; Review review = (from r in
DbContext 的 ObjectContext.ApplyCurrentValues 等效于什么? 最佳答案 没有等价物。您可以通过...获取 ObjectContext ((IObjectCon
我正在使用“ stub technique ”来更新我的 POCO(在分离上下文中使用,ASP.NET MVC)。 这是我目前在我的 Controller 中的代码(有效): [HttpPost] p
同志们,谁能帮帮我, Entity Framework 5好像没有ApplyCurrentValues()方法。有没有另一种方法来更新 Entity Framework v5 中的数据库对象。这是我要
我有一个简单的国家/地区实体,它是由 Entity Framework 4 使用 VS 2010 RC 生成的。它看起来类似于下面的 POCO。 public class Company {
我们有一个带有更新方法的 WCF 服务,用于更新数据库中的客户。 此方法从客户端获取一个分离的实体。 void UpdtaeCustomer(Customer detachedCustomer); 我
我是一名优秀的程序员,十分优秀!