Questions tagged «partial-classes»


9
是否可以在不同的程序集中使两个局部类代表相同的类?
我在名为“ MyProject.Data”的项目中有一个名为“ Article”的类,该类充当Web应用程序的数据层。 我有一个名为“ MyProject.Admin”的单独项目,该项目是用于查看/编辑数据的基于Web的管理系统,是使用ASP.NET动态数据构建的。 基本上,我想使用部分类来扩展Article类,以便可以使用“ UIHint”扩展器来扩展其属性之一,这将允许我用FCKEdit控件替换常规的多行文本框。 我的局部类和扩展器看起来像这样: [MetadataType(typeof(ProjectMetaData))] public partial class Project { } public class ProjectMetaData { [UIHint("FCKeditor")] public object ItemDetails { get; set; } } 现在,如果部分类与原始部分类在同一项目中,即MyProject.Data项目,则所有这些工作正常。 但是,UI行为不应位于数据层,而应位于管理层。因此,我想将此类移至MyProject.Admin。 但是,如果我这样做,该功能将丢失。 我的基本问题是:我可以在单独的项目中有2个局部类,但都指向同一个“类”吗? 如果没有,是否有一种方法可以完成我想做的事情,而又不会将数据层逻辑与UI逻辑混合在一起?

2
部分类文件的命名约定
我正在生成大量的ASP.NET MVC脚手架代码。所有生成的文件都是使用标准命名约定的部分类。例如,我的员工控制器文件名为EmployeeController.cs。如果希望使用自定义的,未生成的逻辑扩展EmployeeController,则创建另一个名为EmployeeControllerCustom.cs的部分类文件。我将自定义和生成的逻辑分为两个不同的文件,因此,下次生成EmployeeController时,我的自定义更改不会被覆盖。在文件名中添加“自定义”后缀对我来说似乎很合理,但是我应该遵循更完善的部分类文件命名约定吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.