我在网上搜索了一个非常简单的问题.我的解决方案是一个exe(WPF)项目和四个类库.我需要一个日志记录,我喜欢NLog.如何在一个解决方案中的所有5个项目中使用它?
我不知道,我是否需要创建(或获取某个地方)从所有项目引用的包装类项目并从那里使用Nlog?我看到为log4Net写的这样的东西.
或者这种情况是否有一些模式或最佳实践?
我现在用一个简单的任务苦苦挣扎了大约14天:在数据库中,我有硬件类别的定义.例如 :
此列表在数据库中定义如下:
[ID - ParrentID - Name] : 1 - 0 - HDD, 2 - 1 - Internal, 3 - 1 - External, 4 - 1 - Flash.
Run Code Online (Sandbox Code Playgroud)
通过实体框架,我将这些行放入我的应用程序中.从这个平面数据我然后创建结构化对象,这是我的DataModel.该模型定义如下:
public class Category
{
private int _id = -1;
private string _name = "";
private List<Category> _subCategories = null;
// property getters and setters, constructors, and bool HasSubCategories
}
Run Code Online (Sandbox Code Playgroud)
现在,从这些我创建名为SubCategoryViewModel的 ViewModel 绑定到我的TreeView.因此,我可以在树视图中查看我的类别,并使用我定义和维护的层次结构.这很好用.在SubCategoryViewModel定义一个命令通过用于MouseDoubleClick附加的行为也被绑定到树视图.因此,当用户双击Item时,在SubViewCategoryModel中定义的方法将执行特定的代码.清单 SubCategoryViewModel嵌套在HWDocumentViewModel这是我的窗口主视图模型.我现在需要的是显而易见的:当用户双击TreeView中的项目时,我需要从数据库加载项目并在ListView中显示它们.我的意见是,在HWDocumentViewModel中, …