gpt4 book ai didi

c# - 是否可以使用基于属性而不是类型的通用约束?

转载 作者:行者123 更新时间:2023-11-30 15:12:23 26 4
gpt4 key购买 nike

<分区>

我正在尝试编写一个类来负责持久化应用程序选项。由于需要保留选项,因此我发送的值必须是可序列化的。

最初我认为我可以编写一个带有如下签名的方法:

Public Sub SaveOption(Of T As ISerializable)(ByVal id As String, ByVal value As T)

或者如果您更喜欢 C#:

public void SaveOption<T>(string id, T value) where T : ISerializable  

原则上这会很好,但是具有 <Serializable> 的类型呢?属性?最著名的例子是 System.String,它没有实现 ISerializable , 但显然这是我应该能够保存的类型。

那么,有没有一种方法可以在编译时根据它们的属性来限制允许哪些类型进入方法?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com