我可以通过代码更好地解释我的问题。这里是
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)设置为字符串实际值。但是怎么样?
答案 0 :(得分:1)
你需要移动你的
data.lastName = actual;
在你的其他循环之后,如果我正确读你的逻辑。
答案 1 :(得分:0)
您首先分配了空字符串属性:
var actual = "";
data.lastName = actual;
然后更新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;