присвоение строки свойству типа C # - PullRequest
0 голосов
/ 14 декабря 2011

Я могу лучше объяснить мою проблему с помощью кода
здесь это

strind abc="12345678<9";
row1ViewModel data = new row1ViewModel();
data.identityType = abc[0].ToString();
data.passportType = abc[1].ToString();
data.issuingOrg = abc.Substring(2, 3);
var  actual = "";
data.lastName = actual;
//data.lastName = actual;
if (abc[5] == '<')
{
    actual = "Not specified";
}
else
{
    string tempq = abc.Substring(5);
    int index = tempq.IndexOf('<');
    actual = abc.Substring(5, index);
}
//data.GetType().GetProperty(data.lastName).GetValue(actual,null)

Здесь мне нужно установить для моего свойства (data.lastname типа string) фактическое значение строки. Но как?

Ответы [ 2 ]

1 голос
/ 14 декабря 2011

Вам нужно переместить

 data.lastName = actual;

после цикла else, если я правильно читаю вашу логику.

0 голосов
/ 14 декабря 2011

Сначала вы присвоили пустое строковое свойство:

var  actual = "";
     data.lastName = actual; 

, а затем обновили значение фактического, но свойство все еще имеет "" в качестве значения. Просто переместите

data.lastName = actual; 

до конца кода:

         strind abc="12345678<9";
     row1ViewModel data = new row1ViewModel();
   data.identityType = abc[0].ToString();
      data.passportType = abc[1].ToString();
      data.issuingOrg = abc.Substring(2, 3);
      var  actual = "";          
     //data.lastName = actual;
      if (abc[5] == '<')
      {
          actual = "Not specified"; 
     } 
     else 
     { 
         string tempq = abc.Substring(5);
          int index = tempq.IndexOf('<'); 
         actual = abc.Substring(5, index); 
       } 
     //data.GetType().GetProperty(data.lastName).GetValue(actual,null)`  
     data.lastName = actual; 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...