我有一个视图模型在视图模型中调用函数?
public class PersonsViewmodel
{
public string FirstName { get; set; }// from DB
public string LastName { get; set; }// from DB
public string FullName { get; set; } // this should be a custom value
}
LINQ查询
var per = from p in db.Persons where p.Active==0
select new PersonsViewmodel
{ FirstName =p.FirstName ,LastName =p.LastName ,
FullName =Reg(p.FirstName)
};
public static string Reg(string str)
{
return str = Regex.Replace(str, "[^a-zA-Z0-9]+", "-", RegexOptions.Compiled);
}
这将引发错误
LINQ到实体无法识别方法“System.String reg(System.String)'方法,并且此方法不能转换为 商店表达。
有没有更好的方式来调用这个Reg函数在模型本身,而不是调用linq查询,或者我应该在linq查询后调用函数?
现在我在查看执行此操作时就像
@{
var FullName = Regex.Replace(model.FirstName, "[^a-zA-Z0-9]+", "-");
}
和使用变量全名来呈现。
我们可以在视图模型中做到这一点。 @jgauffin答案工作! – Gokul 2012-02-10 23:53:48