Есть ли способ получить доступ к частному конструктору от контроллера к модели?
контроллер, содержащий метод вызова модели выглядит следующим образом:Как получить доступ к частному конструктору от контроллера к классу модели в mvc 4
public ActionResult ReadXML()
{
XmlSerializer reader = new XmlSerializer(typeof(List<Asseted>));
TextReader textReader = new StreamReader(@"D:\Tial2.xml");
List<Asseted> asseted;
List<Asseted> list = new List<Asseted>();
asseted = (List<Asseted>)reader.Deserialize(textReader);
textReader.Close();
for (int i = 0; i < asseted.Count; i++)
{
string data123 = Convert.ToString(asseted[i].PopertyValue);
string data234 = Convert.ToString(asseted[i].PropertyName);
list.Add(new Asseted(data123,data234));
}
return View();
}
модель, содержащая метод будет называться выглядит следующим образом:
[XmlRoot]
public class Asseted
{
string pName, pValue;
private string data234;
private string data123;
private Asseted(string data234, string data123)
{
// TODO: Complete member initialization
PropertyName = data234;
PopertyValue = data123;
}
[XmlElement]
public string PropertyName { get; set; }
[XmlElement]
public string PopertyValue { get; set; }
}
Зачем вам нужен частный конструктор в вашем классе Asseted? –
Потому что я хочу напечатать пару имя/значение из контроллера для просмотра в виде списка как строки –
Короткий ответ - нет (частный означает частный для самого класса). Но какова точка вашего цикла. Ваш 'asseted = (List) reader.Deserialize (textReader);' code уже создает коллекцию. В чем смысл создания другой идентичной коллекции? И почему вы используете 'string data123 = Convert.ToString (asseted [i] .PopertyValue);' для преобразования 'string' в другую' string' (его уже 'string') –