我有枚举,

public enum ClearAttributes
{
    S_DURATION,
    S_TYPE

}


我正在使用枚举中的描述将项目添加到NameValueCollection

NameValueCollection nvCollection = new NameValueCollection();
nvCollection.Add(ClearAttributes.S_DURATION.ToString(), "SomeText1");
nvCollection.Add(ClearAttributes.S_TYPE.ToString(), "SomeText2");


我想同时使用description(Key)和value,但是在描述中,它总是将索引值设置为0、1。使用以下代码。

nvCollection.Keys[i];//For Description
nvCollection[i];//For Value


因此,请帮助我从枚举中获取描述。

最佳答案

您可以尝试以下方法:

var description = nvCollection.GetKey(i);
var value =  nvCollection.Get(i);


一种替代方法可能是这样的:

IDictionary<ClearAttributes,string> collection = new Dictionary<ClearAttributes, string>();
collection.Add(ClearAttributes.S_DURATION, "SomeText1");
collection.Add(ClearAttributes.S_TYPE, "SomeText2");

string value = string.Empty;
collection.TryGetValue(ClearAttributes.S_DURATION, out value);

关于c# - 如何获取要添加到NameValueCollection的Enum描述,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22320631/

10-10 12:44