目前我有一个变量和一个属性:
private System.Xml.Linq.XDocument myDoc;
public System.Xml.Linq.XDocument getMyDoc
{
get
{
return myDoc;
}
set
{
myDoc = value;
}
}
现在我需要两个文档:
private System.Xml.Linq.XDocument[] myDoc; // array with 2 or 3 XDocuments
我希望我能够获得或设置一个特定的数组元素:
get
{
return myDoc(0);
}
set
{
myDoc(0)=value;
}
有可能吗?
如果这很重要......由于我正在使用多线程,因此我没有在一个地方获得所有信息。
答案 0 :(得分:2)
您可以将docs变量更改为数组,然后使用索引器:
public class MyXmlDocument
{
private readonly System.Xml.Linq.XDocument[] docs;
public MyXmlDocument(int size)
{
docs = new System.Xml.Linq.XDocument[size];
}
public System.Xml.Linq.XDocument this [int index]
{
get
{
return docs[index];
}
set
{
docs[index] = value;
}
}
}
static void Main(string[] args)
{
// create a new instance of MyXmlDocument which will hold 5 docs
MyXmlDocument m = new MyXmlDocument(5);
// use the indexer to set the element at position 0
m[0] = new System.Xml.Linq.XDocument();
// use the indexer to get the element at position 0
System.Xml.Linq.XDocument d = m[0];
}