Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 字典<;int、guid>;如何获取Guid为的值字段?_C#_Asp.net_Linq - Fatal编程技术网

C# 字典<;int、guid>;如何获取Guid为的值字段?

C# 字典<;int、guid>;如何获取Guid为的值字段?,c#,asp.net,linq,C#,Asp.net,Linq,为了从字典中获取Guid值,我做了很多努力。有人请帮帮我。它正在显示System.FormatException。提前谢谢 我的代码: Dictionary<int, Guid> products = productRepository.QueryNoTracking() .Select(x => new { x.ID, x.ProductKey }) .ToDictionary(x => x.ProductKey, x => x.ID); 不要

为了从字典中获取Guid值,我做了很多努力。有人请帮帮我。它正在显示System.FormatException。提前谢谢

我的代码:

Dictionary<int, Guid> products = productRepository.QueryNoTracking()
    .Select(x => new { x.ID, x.ProductKey }) 
    .ToDictionary(x => x.ProductKey, x => x.ID);

不要使用LINQ查询在字典中查找键/值:

Guid productID;
bool knownProductKey = products.TryGetValue(productKey, out productID);
if(knownProductKey)
    positionGroup.ProductID = productID;
else
    positionGroup.ProductID = new Nullable<Guid>();
Guid-productID;
bool knownProductKey=products.TryGetValue(productKey,out productID);
if(已知产品密钥)
positionGroup.ProductID=ProductID;
其他的
positionGroup.ProductID=new Nullable();

不要使用LINQ查询在字典中查找键/值:

Guid productID;
bool knownProductKey = products.TryGetValue(productKey, out productID);
if(knownProductKey)
    positionGroup.ProductID = productID;
else
    positionGroup.ProductID = new Nullable<Guid>();
Guid-productID;
bool knownProductKey=products.TryGetValue(productKey,out productID);
if(已知产品密钥)
positionGroup.ProductID=ProductID;
其他的
positionGroup.ProductID=new Nullable();

如果您需要帮助,您真的应该发布足够的代码,我们可以将其复制粘贴到Visual Studio中并轻松修复

由于您提供的信息有限,因此为您获取工作样本非常耗时

无论如何,这或多或少是其他评论所暗示的

您将不得不让它根据您的需要进行调整,因为没有足够的信息来提供工作代码

var positionGroup = new Entities.PositionGroup()
{
    ProductID = productRepository.QueryNoTracking()
        .Where(x => x.ProductKey==productKey)
        .Select(x => x.ID}) 
}

如果您需要帮助,您真的应该发布足够的代码,我们可以将其复制粘贴到VisualStudio中并轻松修复

由于您提供的信息有限,因此为您获取工作样本非常耗时

无论如何,这或多或少是其他评论所暗示的

您将不得不让它根据您的需要进行调整,因为没有足够的信息来提供工作代码

var positionGroup = new Entities.PositionGroup()
{
    ProductID = productRepository.QueryNoTracking()
        .Where(x => x.ProductKey==productKey)
        .Select(x => x.ID}) 
}


你创建了一本字典,为什么不使用它呢?正如在
products[productkey]
?FWIW中一样,LINQ不工作的原因是
Where
将返回一个匹配的集合,因此您得到的是集合的
ToString
,而不是单个值
FirstOrDefault
更符合您的需要,但正如答案所示,请使用字典的强大功能。我不知道如何实现。你能帮帮我吗!我是.Net技术的初学者,你能详细解释一下吗@oerkelensOne想知道您是否将
产品
字典用于任何其他目的,以及您是否可以首先直接从
产品存储库
获取guid?这将满足“我必须使用LINQ查询,这是必需的。”。您创建了一个字典,为什么不使用它呢?正如在
products[productkey]
?FWIW中一样,LINQ不工作的原因是
Where
将返回一个匹配的集合,因此您得到的是集合的
ToString
,而不是单个值
FirstOrDefault
更符合您的需要,但正如答案所示,请使用字典的强大功能。我不知道如何实现。你能帮帮我吗!我是.Net技术的初学者,你能详细解释一下吗@oerkelensOne想知道您是否将
产品
字典用于任何其他目的,以及您是否可以首先直接从
产品存储库
获取guid?这将满足“我必须使用LINQ查询,这是必需的。”。我必须使用LINQ查询,这就是要求。@HelenAnita:要求使用效率极低的代码?好的。我正在尝试@TimSchmelter@HelenAnita:当然,只有当你创建一次字典,然后像我一样在任何地方使用它进行查找时,字典才有意义。如果总是在使用它之前创建它,则效率低下;positionGroup.ProductID=products.TryGetValue(positionGroup.PositionGroupKey,out ProductID)==true?productId:(Guid?)null;我必须使用LINQ查询,这是要求。@HelenAnita:要求使用效率极低的代码?好的。我正在尝试@TimSchmelter@HelenAnita:当然,只有当你创建一次字典,然后像我一样在任何地方使用它进行查找时,字典才有意义。如果总是在使用它之前创建它,则效率低下;positionGroup.ProductID=products.TryGetValue(positionGroup.PositionGroupKey,out ProductID)==true?productId:(Guid?)null;