C# lambda表达式函数
我有以下代码:C# lambda表达式函数,c#,lambda,C#,Lambda,我有以下代码: int pictureId=10; string cacheKey = string.Format(ModelCacheEventConsumer.PICTURE_URL_MODEL_KEY, pictureId); return _cacheManager.Get(cacheKey, () => { var url = _pictureService.GetPictureUrl(pictureId, showDefa
int pictureId=10;
string cacheKey = string.Format(ModelCacheEventConsumer.PICTURE_URL_MODEL_KEY, pictureId);
return _cacheManager.Get(cacheKey, () =>
{
var url = _pictureService.GetPictureUrl(pictureId, showDefaultPicture: false);
//little hack here. nulls aren't cacheable so set it to ""
if (url == null)
url = "";
return url;
});
这部分代码的确切含义是什么:
这是否意味着对缓存中的每一行执行返回URL的函数?那么返回类型列表是什么
此语法文档的URL
这部分代码的确切含义是什么
它只是通过参数传递一个方法
这是否意味着对缓存中的每一行执行返回URL的函数
只有对象\u cacheManager
的方法Get
的内容才能回答此问题
什么是返回类型列表
返回类型是字符串,因为变量url
是字符串
这部分代码的确切含义是什么
它只是通过参数传递一个方法
这是否意味着对缓存中的每一行执行返回URL的函数
只有对象\u cacheManager
的方法Get
的内容才能回答此问题
什么是返回类型列表
返回类型是一个字符串,因为变量
url
是一个字符串。cacheManager的第二个参数。Get()方法是一个匿名方法,用于捕获pictureId和其他内容
要想找出返回的类型,请尝试使用var关键字并创建一个本地变量:而不是
return u cacheManager.Get()
writevar x=\u cacheManager.Get()
后面跟着return x
。然后简单地将鼠标悬停在Visual Studio中的关键字var上。第二个参数到cacheManager.Get()方法是一个匿名方法,用于捕获pictureId和其他内容
要找出返回的类型,请尝试使用var关键字并创建一个局部变量:而不是return\u cacheManager.Get()
writevar x=\u cacheManager.Get()
,然后在Visual Studio中将鼠标悬停在关键字var上
这部分代码的确切含义是:
() =>
{"
var url =...."
lambda表达式是delegate的“快捷方式”,delegate是对回调函数的引用(在一个非常简单的解释中)。因此,这是一个函数,将在缓存管理器的Get
方法中调用,该方法希望将Func
delegate作为第二个参数
这是否意味着对缓存中的每一行执行返回URL的函数
我认为它将对键值与cacheKey
变量值相同的行执行。因此,只执行一次(如果键值是唯一的)
什么是返回类型列表
返回类型是string,因为如果GetPictureUrl
的结果为null,则返回空字符串。调用此方法也希望结果中包含字符串
这部分代码的确切含义是:
() =>
{"
var url =...."
lambda表达式是delegate的“快捷方式”,delegate是对回调函数的引用(在一个非常简单的解释中)。因此,这是一个函数,将在缓存管理器的Get
方法中调用,该方法希望将Func
delegate作为第二个参数
这是否意味着对缓存中的每一行执行返回URL的函数
我认为它将对键值与cacheKey
变量值相同的行执行。因此,只执行一次(如果键值是唯一的)
什么是返回类型列表
返回类型为字符串,因为如果
GetPictureUrl
的结果为空,它将返回空字符串。调用此方法也希望结果中包含字符串什么类型是\u cacheManager?\u cacheManager实现ICacheManager IDisposable接口,该接口将方法Get定义为:T Get(字符串键);什么类型是_cacheManager?_cacheManager实现ICacheManager IDisposable接口,该接口的方法Get定义为:T Get(字符串键);抱歉,我的意思是Get方法返回的变量是什么类型,如字符串列表或字符串数组。@Simon只能通过查看方法Get内部或将鼠标移到方法上来回答它(如果您使用的是Visual Studio)。返回类型将为您显示抱歉,我的意思是什么类型是从Get方法返回的变量,如字符串列表或字符串数组。@Simon只能通过查看方法Get内部或将鼠标移到方法上来回答它(如果您使用的是Visual Studio)。返回类型将为您显示