sách gpt4 ai đã đi

Làm thế nào để tạo một phương thức mở rộng cho phép tôi gọi ToSerializableDictionary(p => p.ID) thay vì .ToDictionary(p => p.ID)

In lại 作者:行者123 更新时间:2023-11-30 19:11:01 35 4
mua khóa gpt4 Nike

我想创建一个扩展方法,允许我调用 ToSerializableDictionary(p => p.ID)Còn hơn là .ToDictionary(p => p.ID)在以下 LINQ 上下文中。虽然我不确定我应该制作一个扩展方法来替换哪个类 ToDictionary .

response.attributes = (
from granuleGroup in groups
let granuleRow = granuleGroup.First().First()
select new USDAttributes()
{
id = (int)granuleRow["id"],
...
attributes =
(
...
).ToDictionary(p => p.ID) <--** LINE IN QUESTION **
}
).ToList();

My SerializableDictionary classLấy từ đây这样我就可以在我的 web 服务中序列化字典对象以返回与 JSON 兼容的哈希表。

最初我为 IDictionary 创建了一个扩展方法,所以我可以这样做:...).ToDictionary(p => p.ID).ToSerializableDictionary();但这是一个彻底的失败,因为这是我第一次创建扩展方法,我不知道我在做什么。

public static class CollectionExtensions
{

public static SerializableDictionary ToSerializableDictionary(this IDictionary sequence)
{

SerializableDictionary sDic = new SerializableDictionary();


foreach (var item in sequence)
{

}

return sDic;

}
}

1 Câu trả lời

public static SerializableDictionary ToSerializableDictionary(this IEnumerable seq, Func keySelector)
{
var dict = new SerializableDictionary();
foreach(T item in seq)
{
TKey key = keySelector(item);
dict.Add(key, item);
}

return dict;
}

关于c# - 如何创建一个扩展方法,允许我调用 ToSerializableDictionary(p => p.ID) 而不是 .ToDictionary(p => p.ID),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13807552/

35 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com