我想为 ASP.Net MVC 6 应用程序创建一个日志系统,它将日志消息链接到某些对象。
例如:
- 用户 {0} 购买了 {1}
- 项目 {0} 已通过提供商 {1} 进货,购买由 (2)
这将映射到:
- 用户 John Apple 购买了 Box
- 项目时钟由供应商卡西欧进货,购买由约翰尼下达
到目前为止,我有一个“日志”方法,它接收一个 IEnumerable 和一个 IEnumerable id
例如:
- 枚举对象类型。用户:2
- EnumObjectType.Product:1
- ...
我已经拥有了将这些数组保存在数据库中、读取它们、将它们转换为枚举等的所有代码。但是,我不知道如何制作应用程序的“视图”部分。
即转换一个Log.Message(一个实例),例如:
User {0} purchased {1}
到User <a href="#">John Apple</a> purchased <a href="#">Box</a>
我需要什么?
从“日志模型视图”中,如何获取任何模型的“名称”属性(查询给定对象,并使用它的属性)知道它的类型(EnumObjectType)和它的 ID?
额外细节
所有可以记录的“模型”都将实现一个包含两个方法的接口,一个返回指向该类的给定实例的链接的 ToLinkStructure(例如 /User/Details/{0})和一个返回快速字符串的 ToLoggableString表示一个实例(例如“用户:” + this.username)
谢谢!我试图给出所有我能想到的细节,但如果有什么遗漏,我会很高兴补充