如何写得漂亮?

San*_*huk 5 .net c# copy linq-to-sql

嗨,我是c#的新手,我想问一下如何编写这个代码更多的prety

public void Update(Product pr)
    {
        Product prod = GeProductById(pr.ProductID);
        prod.Name       = pr.Name;
        prod.Count      = pr.Count;
        prod.InputPrice = pr.InputPrice;
        prod.InputDate  = pr.InputDate;
        prod.OutPrice   = pr.OutPrice;
        prod.InputPriceByCurrency   = pr.InputPriceByCurrency;
        prod.InputPriceCurrency     = pr.InputPriceCurrency;
        prod.ComeOwner  = pr.ComeOwner;
        prod.GroupID    = pr.GroupID;
        prod.Discount   = pr.Discount;

        _context.SubmitChanges();
    }
Run Code Online (Sandbox Code Playgroud)

它只是复制除id之外的所有属性.我可以写一下吗?Thanx并抱歉我的英语不好

Dav*_*vid 4

看来这件事还有更多的事情。为什么不能按pr原样保存到数据存储?看起来您可能没有有效地使用 ORM,尽管这可能有充分的理由,但我们从这段代码的范围中看不到。

更一般地说,在这种情况下,您可能会幸运地使用像自动映射器这样的东西。不过,老实说,我认为只要对 ORM 的使用方式进行一些重新设计,这里就没有必要了。

根据迄今为止的评论,我还想指出,像这样又长又无聊的映射函数本身并没有什么问题。即使是20处房产或200处房产。如果它只写一次,很容易阅读和理解它在做什么,做得很好等等,那么它就不是一段糟糕的代码。代码并不总是漂亮的,也不需要如此。人们很容易想做一些更聪明的事情来使代码更酷或更有趣,但在以后支持该代码时,聪明并不总是更好。