J
Jon Davis
I'm managing "collections" / "lists" (??) of objects that are internally
bound by an XML document, but I do NOT intend to offer an IEnumerator
interface.
For instance, with a root XML document, I might have:
<employees>
<employee><name>bob</name></employee>
<employee><name>carl</name></employee>
<employees>
... and I might have a C# class as such:
public class Employee {
public Employee(XmlNode employeeNode) {
InnerEmployeeNode = employeeNode;
}
private XmlNode InnerEmployeeNode;
public string Name {
get {
return InnerEmployeeNode.SelectSingleNode("name").InnerText;
}
}
}
.... and so now I have a "list" or "collection" of sorts as such:
public class EmployeeList {
public EmployeeList (XmlNode employeesNode) {
InnerEmployeesNode = employeesNode;
}
private XmlNode InnerEmployeesNode;
public Employee this[string name] {
get {
XmlNodeList employeeNodes =
InnerEmployeesNode.SelectNodes("employee");
foreach (XmlNode node in EmployeeNodes) {
if (node.SelectSingleNode("name") == name) {
return new Employee(node);
}
}
return null;
}
}
}
So now my question is, what should I call this list type?
"EmployeeCollection"? "EmployeeList"? "EmployeeArray" in such a way that it
is not confusing. I myself am confused.
Thanks,
Jon
bound by an XML document, but I do NOT intend to offer an IEnumerator
interface.
For instance, with a root XML document, I might have:
<employees>
<employee><name>bob</name></employee>
<employee><name>carl</name></employee>
<employees>
... and I might have a C# class as such:
public class Employee {
public Employee(XmlNode employeeNode) {
InnerEmployeeNode = employeeNode;
}
private XmlNode InnerEmployeeNode;
public string Name {
get {
return InnerEmployeeNode.SelectSingleNode("name").InnerText;
}
}
}
.... and so now I have a "list" or "collection" of sorts as such:
public class EmployeeList {
public EmployeeList (XmlNode employeesNode) {
InnerEmployeesNode = employeesNode;
}
private XmlNode InnerEmployeesNode;
public Employee this[string name] {
get {
XmlNodeList employeeNodes =
InnerEmployeesNode.SelectNodes("employee");
foreach (XmlNode node in EmployeeNodes) {
if (node.SelectSingleNode("name") == name) {
return new Employee(node);
}
}
return null;
}
}
}
So now my question is, what should I call this list type?
"EmployeeCollection"? "EmployeeList"? "EmployeeArray" in such a way that it
is not confusing. I myself am confused.
Thanks,
Jon