下面是我的代码:
public ActionResult DeleteItem(int id)
{
using (var cont = new PhotoGalleryDBEntities4())
{
var refToDel = cont.Referanslars.First(x => x.Id == id);
if (!ModelState.IsValid)
return Content("Referans
当我尝试将一个“实体”添加到站点时,我得到了这个错误。
“一个实体对象不能被多个IEntityChangeTracker实例引用”
网站和“实体”之间是一对多的关系。
我的模型如下所示:
站点:
public class Site : Model
{
// The collection of Entities belonging to this site
public virtual ICollection<Entity> Entities { get; set; }
}
实体:
public class Entity : Model
{
public string Labe
这个简单的代码给了我这个错误。
实体对象不能由多个IEntityChangeTracker实例引用。
public void InsertData(List<tbOnConsignmentExamination> objBeExam)
{
GsecEntities db = new GsecEntities();
foreach (var tbOnBeExamNumber in objBeExam)
{
db.AddTotbOnConsignmentExaminations(tbOnBe
我想在一个实体上设置一个外键。我在用户控件中公开了外部实体,并希望通过WinForms数据绑定来设置它。
这里有一个问题-外部实体最初是从另一个存储库/DbContext加载的,因为用户控件使用自己的存储库独立地填充自己。
不幸的是,这不能“开箱即用”,就像这个例子演示的那样:
var repository1 = GetRepository();
var categoryFromRepository1 = repository1.GetAll<Category>().First();
var repository2 = GetRepository();
var appointme
以下方法的目的是使用实体框架从数据库中删除数据。我是通过传递两个参数来填充订阅实体,然后调用上下文类的atttach和remove方法。Bureau实体是上下文类。
using (BUREAUEntities bureauEntities = new BUREAUEntities())
{
var subscription = new SubcriptionRepository().GetSusbcriptionBySubscriptionTypeId(subscriptionTypeId, companyId);
bureauEntities.Subscriptions.At
我正在使用Web 2、实体框架6和标识2
我有与ApplicationUser模型相关的产品模型,在创建Product时,我得到了一个错误:
附加信息:实体对象不能被多个IEntityChangeTracker实例引用。
我的模特:
public class Product {
public int id { get; set; }
public string url { get; set; }
public string name {get;set}
public ApplicationUser user { get; set; }
}
我的创建代码:
我有一个名为Message的模型。在该模型中,有另一个名为ICollection的模型的ResourceSubscribers。当我试着
public void SaveMessage(List<int> subscribers)
{
Condition.Requires(model).IsNotNull();
Message model = new Message();
//Some assignments to initialize the model
ICollection<Resource&g
在我的自定义开发的应用程序中,我得到了一个错误“一个实体对象不能被IEntityChangeTracker的多个实例引用”。这意味着正如我所理解的,我不能使用附加到多个上下文的同一实体。为了重现错误,我使用以下代码创建了一个沙箱应用程序:
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.
我正在使用以下内容 UnitOfWork 类,以便通过使用泛型为我的实体获取存储库。 public class UnitOfWork : IUnitOfWork
{
private readonly EfDbContext _context;
public UnitOfWork()
{
_context = new EfDbContext();
}
public IRepository RepositoryFor() where T : Entity
{
return new Repository(_context);
}
public
我有以下伪代码使用EF code First:
User user = GetFromCache();
Playlist playlist = new Playlist { Name = "name", User = user };
playlistRepository.Add(playlist);
unitOfWork.Commit();
GetFromCache()方法检查用户是否在缓存中,如果没有,它使用存储库从数据库中获取用户。如果它在缓存中,它会返回它。
当我第一次运行这段代码时,一切都很好。当我第二次运行它,并且它从缓存中获取用户时,我得到了一个异常:一个实体
我试图获取和更新EF对象,但是我得到了错误:
附加信息:实体对象不能被多个IEntityChangeTracker实例引用。
我明白这是什么问题。但是,如何正确地编写数据访问方法以避免这样的问题?
var store = (new StoresRepository(connectionString)).GetStore(1);
// Change store object
(new StoresRepository(connectionString)).Update(store);
数据访问代码:
public class StoresRepository
{
public bool UpdateDetails(Block _updateblock)
{
using (var context = new DbContext())
{
context.blocks.Attach(_updateblock);
context.Entry(_updateblock).State=System.Data.Entity.EntityState.Modified;
context.Sa
我有一个用户表,与一个警报表有多到多的关系。在创建了一个成员用户之后,我将在数据库中添加一些额外的信息。
MembershipCreateStatus createStatus = MembershipService.CreateUser(model.UserName, model.Password, model.Email);
if (createStatus == MembershipCreateStatus.Success) {
User user = new MidTier.Models.User();
user.FullName = model.FullName;
if (Al
我试图向数据库中添加新的数据,下面是我的代码:
// This is the dbContext
private BugTrackerDBContainer db = new BugTrackerDBContainer();
//The objet with its properties
public static Developper devAdded = new Developper();
devAdded.Name = txb_name.Text;
devAdded.FirstName = txb_firtname.Text;
// Add to the database
db.Ad
当我试图向db中添加一个对象时,它会出现如下错误:
“System.InvalidOperationException”类型的异常发生在EntityFramework.dll中,但未在用户代码附加信息中处理:实体对象不能被多个IEntityChangeTracker实例引用。
这是我的代码:
Order.cs
namespace OnlineMealOrdering.Models
{
public class Order
{
[Key]
public int Id { get; set; }
public virtual User
我正在尝试从操作方法'Checkout‘向Order和OrderItem表中插入数据,如下面的代码所示。但是我得到一个错误‘一个实体对象不能被IEntityChangeTracker的多个实例引用’。如何将数据同时添加到Order和OrderItem表??代码如下所示:
public ActionResult Checkout([Bind(Include = "UserId,Address1,Address2,OrderDateTime,Town,Country,PostalCode,TotalPrice")] Order order)
{
if
首先,请原谅我,因为我对MVC/实体框架相当陌生。我试图对实体框架代码(首先是数据库)进行部分更新,以便使用MVC5对特定的授权用户进行更新。
我创建了一个名为UserProfile的额外类来扩展asp.net标识ApplicationUser类。下面是代码:
public class UserProfile
{
[Key, ForeignKey("ApplicationUser")]
public string UserId { get; set; }
public virtual ApplicationUser ApplicationUser {
我有两个控制器和仓库,礼物和注册表。礼物可以有一个注册表,当我尝试创建一个新的礼物时,我收到错误消息“一个实体对象不能被IEntityChangeTracker的多个实例引用”。
礼物具有以下属性:
public class Gift
{
public int GiftId { get; set; }
public string Name { get; set; }
public Registry Registry { get; set; }
}
我添加礼物的代码如下:
在控制器中:
private IGiftRepository _giftReposito
我只在实体框架工作了几个星期。这很好,但是我应该如何正确地添加带有引用子项(表)的新行?
我试过这个程序
CMS.ShopOrder order = new CMS.ShopOrder();
order.CreatedOn = DateTime.Now;
foreach (var item in CMS.CurrentSession.Cart.Items)
{
order.ShopOrderItems.Add(item);
}
db.AddToShopOrder(order);
int
我有一个项,它的一个属性是country,它是一个对象,我认为我应该能够执行下面的代码。
var Post = new Post();
country = simpleRepository.GetCountries().FirstOrDefault(c => c.CountryId == postViewModel.PostAddress.CountryId);
post.PostAddress.Country = country;
allThingsEntities.Posts.Add(post);
不幸的是,当我这样做时,我会得到这个错误:
实体对象不能由多个IEntity