Я делаю приложение под Windows в C #, используя Linq.Я пытаюсь обновить столбец внешнего ключа, но получаю сообщение об ошибке:
«Операция недействительна из-за текущего состояния объекта.»
Окно сообщения об ошибке указывает на строку:
throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
Я использовал следующий метод для обновления:
//Updates a Product
public void UpdateProduct(int productID, string productName, int categoryID, int supplierID, bool priceType, decimal costPrice, decimal retailPrice, bool inStock)
{
Product product = (from p in db.Products
where p.ProductId == productID
select p).Single();
product.Name = productName;
product.CategoryId = categoryID;
product.SupplierId = supplierID;
product.PriceType = priceType;
product.CostPrice = costPrice;
product.RetailPrice = retailPrice;
product.Stock = inStock;
db.SubmitChanges();
}
В чем проблема?Заранее спасибо!