EPR类企业管理系统

在我们现有系统基础上或全新开发,提供定制服务
为您的企业高效快速实施ERP,WMS,MES,CRM管理系统
全面管控物料仓库、销售业务、采购业务、仓库业务
生产过程、质量检验、组织架构、业务报表


定制
QQ:460-3528

开发
QQ群:3360-90194

源码
微信:136-3650-3721

如何:实现文件数据属性

本主题演示如何使用文件数据属性和文件集合属性实现业务类。为此,实现了Resume类,该类用于存储和管理员工的简历信息。它具有三个属性:FileContactPortfolio。该文件属性提供的文件,该联系人属性包含一个参考接触类,而组合属性返回雇员的文件的集合。

要将文件数据类型属性和文件集合属性添加到业务对象,应使用实现IFileData接口的类型和应用FileAttachment属性的类型。在这种情况下,应分别将FileAttachmentsWindowsFormsModuleFileAttachmentsAspNetModule和/或FileAttachmentMobileModule模块添加到WinForms,ASP.NET Web和/或Mobile模块项目中。这些模块包含的属性编辑器IFileData类型属性,以及控制器操作所必需的文件操作。请注意,IFileData属性仅支持文件下载。有关详细信息,请参阅“文件附件模块概述”主题。

要将添加FileAttachmentsWindowsFormsModuleFileAttachmentsAspNetModule和(或)FileAttachmentMobileModule模块(S)的应用程序,调用模块设计为的WinForms,ASP.NET和(或)移动模块项目(S),拖动相应的项目从工具箱到设计器的“必需的模块”部分,然后重新生成解决方案。

以下代码演示了Resume业务对象。

[DefaultClassOptions]
public class Resume : BaseObject {
   public Resume(Session session) : base(session) {}
   private Contact contact;
   private FileData file;
   [Aggregated, ExpandObjectMembers(ExpandObjectMembers.Never)]
   public FileData File {
      get { return file; }
      set {
         SetPropertyValue(nameof(File), ref file, value);
      }
   }
   public Contact Contact {
      get { 
         return contact;
      }
      set {
         SetPropertyValue(nameof(Contact), ref contact, value);
      }
   }
  [Aggregated, Association("Resume-PortfolioFileData")]
  public XPCollection<PortfolioFileData> Portfolio {
     get { return GetCollection<PortfolioFileData>(nameof(Portfolio)); }
  }
}
public class PortfolioFileData : FileAttachmentBase {
   public PortfolioFileData(Session session) : base(session) {}
   private DocumentType documentType;
   protected Resume resume;
   [Persistent, Association("Resume-PortfolioFileData")]
   public Resume Resume {
      get { return resume; }
      set { 
         SetPropertyValue(nameof(Resume), ref resume, value); 
      }
   }
   public override void AfterConstruction() {
      base.AfterConstruction();
      documentType = DocumentType.Unknown;
   }
   public DocumentType DocumentType {
      get { return documentType; }
      set { SetPropertyValue(nameof(DocumentType), ref documentType, value);}
   }
}
public enum DocumentType { SourceCode = 1, Tests = 2, Documentation = 3, 
   Diagrams = 4, ScreenShots = 5, Unknown = 6 };

要创建员工文件的集合,Resume类具有XPCollection <PortfolioFileData>类型的Portfolio属性。所述PortfolioFileData类是从继承FileAttachmentBase类,这反过来,使用FileAttachment的接口。该FileAttachmentBase类,还有FileAttachment的属性,从业务对象库。

PortfolioFileData类有DocumentType指定组合的文件类型属性。此属性在AfterConstruction方法重写中初始化。该PortfolioFileData类还存储到一个参考恢复其对象恢复性能。

下图显示了WinForms,ASP.NET Web和Mobile应用程序中的“继续 详细信息”视图

简历赢

履历表

继续移动

相关文章

转载保留此链接,注明出处