Apress Pro Asp.net MVC Framework 3 - SportsStore Edit Product not working?

后端 未结 7 2055
慢半拍i
慢半拍i 2021-02-13 23:33

G’day All, has anyone purchased the ALPHA of Apress Pro Asp.net MVC Framework 3 and created the SportsStore? I can’t for the life of me edit products and have the DB update suc

7条回答
  •  栀梦
    栀梦 (楼主)
    2021-02-14 00:05

    I came across the same issue using the final version of Apress Pro ASP.NET MVC3. Using the Visual Studio debugger I noticed that when the context.SaveChanges()(SportsStore.Domain.Concrete.EFProductRepoistory) was executed the context was not changed to the changes we made inside the Edit view. Though the product defined in the constructor of SaveProduct()

    So i guessed all we had to do is change the Context.Products.Product to the product inside the constructor like this:

            else
            {
                context.Products.Find(product.ProductId) = product;
            }
    

    unfortunately Visual Studio gave me this error:

    Error 1 The left-hand side of an assignment must be a variable, property or indexer

    So to make it work I had to do this:

            else
            {
                context.Products.Find(product.ProductID).Name = product.Name;
                context.Products.Find(product.ProductID).Description = product.Description;
                context.Products.Find(product.ProductID).Category = product.Category;
                context.Products.Find(product.ProductID).Price = product.Price;
            }
    

    This does work. However I think this is far from ideal and not the best way to do this.

    Is there a way to do this in a way where I just edit/update the whole Product object inside the context rather than edit every property one by one?

提交回复
热议问题