需要帮助编写匿名方法

本文关键字:方法 帮助 | 更新日期: 2023-09-27 18:08:15

如果我的问题在技术上措辞错误,请原谅我,但我基本上需要一个匿名方法或Func委托来封装以下功能:

                if (Cache.CurrentCustomer == null)
                {
                    return null;
                }
                else
                {
                    return Cache.CurrentCustomer.PersonID; // (Guid type)
                }

上面的if语句将返回一个值,该值将分配给具有公开的PersonID属性字段的Order实体,该属性字段接受可空的guid类型。

如果一个Func委托是可能的,那么可以动态地实例化,像

orderToInsert.PersonID = new Func() => { ... }
我通常会将我的if语句场景发送到一个帮助支持方法中,这是一个很好的机会来学习我一直试图选择的东西!TIA ! !

需要帮助编写匿名方法

下面是lambda格式:

Func<Guid?> lambda = () => Cache.CurrentCustomer == null 
                             ? (Guid?)null 
                             : Cache.CurrentCustomer.PersonID;

你可以像

那样使用它
orderToInsert.PersonID = lambda();

更新:如果你只是想看看这里有什么可能,那么你也可以这样做:

orderToInsert.PersonID = (() => Cache.CurrentCustomer == null 
                             ? (Guid?)null 
                             : Cache.CurrentCustomer.PersonID)();

实际上是对经典的

的一种迂回的方式
orderToInsert.PersonID = Cache.CurrentCustomer == null 
                             ? (Guid?)null 
                             : Cache.CurrentCustomer.PersonID;