如果我有相同键的多个值,那么如何在哈希表中添加它 例如:
Hashtable hs = new Hashtable();
hs["id"]= "x001.xhtml";
hs["media-type"]= "application/xhtm+xml";
hs["href"]= "text/001.xhtml";
hs["id"]= "x002.xhtml";
hs["media-type"]= "application/xhtm+xml";
hs["href"]= "text/002.xhtml";
hs["id"]= "x003.xhtml";
hs["media-type"]= "application/xhtm+xml";
hs["href"]= "text/003.xhtml";
这只是哈希表中的最后一组,即
hs["id"]= "x003.xhtml";
hs["media-type"]= "application/xhtm+xml";
hs["href"]= "text/003.xhtml";
如何解决这个问题....提前感谢!!
答案 0 :(得分:9)
哈希表已定义具有唯一键,索引器替换现有值。听起来你真的想要一个对象列表,即
var list = new List<YourType> {
new YourType { Id = "x001.xhtml", MediaType = "...", Href = "..." },
new YourType { Id = "x002.xhtml", MediaType = "...", Href = "..." },
new YourType { Id = "x003.xhtml", MediaType = "...", Href = "..." }
};
与
public class YourType {
public string Id {get;set;}
public string MediaType {get;set;}
public string Href {get;set;}
}
(或类似)
答案 1 :(得分:1)
解决您的问题
你没有为你的模特使用合适的班级。
您需要的是List<Hashtable>
改进您的代码
还要考虑为HashTable
。
最好使用List<YourMedia>
然后你的代码看起来像:
List<Media> medias = new List<Media>();
media.add(new Media("x001.xhtml", "application/xhtm+xml", "text/001.xhtml")
[...]