在复杂的经典asp世界中生活多年后住在一个洞里 - 试图出去......由于语法发生了很大变化,我什至不确定如何正确搜索,但这是我尝试用经典术语解释我的问题:
- 现有数据库/数据库优先
我想在详细信息页面上显示一个串联变量。 例如,名字、姓氏、后缀等列字段的数据库结果的简单串联。我无法弄清楚如何在视图模型、控制器、视图本身、元数据(通过 partClasses)中创建串联字符串,以及如何在视图中调用和显示它。 创建此"变量"的最佳位置在哪里?
ps. 使用搜索词/教程的指导也将不胜感激。
是正确的位置,而不是控制器或视图。
在您的模型中类似
public string ConcatenatedName
{
get
{
return string.format("{0} {1} {2}",FirstName, LastName, Suffix)
}
}
public string FirstName
{
get { return _firstName; }
set { _firstName = value;}
}
public string LastName
{
get { return _lastName; }
set { _lastName = value;}
}
public string Suffix
{
get { return _suffix; }
set { _suffix = value;}
}
然后在视图中使用串联名称。将它放在模型中可以让您在单元测试中检查它,您将无法在视图中轻松完成,并且控制器不应该被这个弄乱,并且不是它的正确位置
编辑:假设 - 我假设您已经将数据库和UI分开,并且没有使用db obj作为视图的模型。我假设您至少放了一个中间层,并且至少将(例如自动映射器)从数据库对象映射到视图模型对象