程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> XAF應用開發教程-內置Attribute功能列表,xafattribute

XAF應用開發教程-內置Attribute功能列表,xafattribute

編輯:C#入門知識

XAF應用開發教程-內置Attribute功能列表,xafattribute


在 XAF 框架,一些用來生成一個業務應用程序的信息是在Attribute中指定。您可以將屬性應用到業務類 (或它的成員) 指定驗證規則,指定如何對數據進行顯示、 設置關系類等。本主題提供了有關在何處以及如何可以應用這些屬性的內置 XAF 框架屬性和信息的列表。

 

Attribute

說明

ActionAttribute 在業務對象上書寫方法,並在方法上面加上這個Attribute,在界面上,會出現一個簡單按鈕或彈出窗口按鈕. AppearanceAttribute 在業務類或方法\屬性上面書寫此Attribute,可以控制相關的外觀控制,比如:控件是否禁用,是否只讀,背景顏色變化,字體,按鈕是否可用等. AggregatedAttribute 在XPCollection<T>類型的屬性上面寫,可以控制主從表結構的業務對是否為聚合關系. 什麼聚合?就是主對象與子對象放到一起對應著業務上的一個內容,比如,訂單,訂單明細,這兩個表放到一起才是完整的. CalculatedAttribute 在屬性上面寫,屬性的結果將是計算而來的. CalculatedPersistentAliasAttribute Applied to a business class. Allows you to dynamically configure a persistent alias for the target business class' property. CaptionsForBoolValuesAttribute 在布爾類型的屬性上面寫,可以指定true,false的值顯示為指定的值,比如,換成男/女,真/假,是/否.但不要把這個做為漢化之用. CodeRuleAttribute Applied to a validation rule. Specifies that the rule is intended for a particular business class and does not have a corresponding validation attribute. CollectionSourceModeAttribute Specifies the mode of operation for the Collection Sources created by List Property Editors representing the CollectionSourceModeAttribute's target property. CreateInstanceAttribute Specifies that a Domain Component's target method will create Domain Component instances. CreatableItemAttribute 在BO/DC上面寫,在web下面與win下面不太一樣.可以快速新建菜單上顯示這個BO. CriteriaOptionsAttribute 當使用條件編輯器時,在這裡指定一些選項,比如,條件應用到哪個BO上面. DataSourceCriteriaAttribute 可以應用於BO類型的屬性,或XPCollection<T>上面,指定選擇(Link,鏈接)對象時,用什麼條件去過濾數據源,比如,有個客戶屬性,選擇客戶時,某一場景中需要顯示出所有年齡在30到50中間的客戶. DataSourceCriteriaPropertyAttribute 與上面的功能相同,但這個條件不是寫死的,是從另一個屬性中讀過來的.這樣可以在那個屬性中動態的接出條件來. DataSourcePropertyAttribute 功能與上面兩個類型,但直接從某個屬性中指定可選擇的數據來源了,更加動態了,不過要考慮性能問題還是少用為好,因為程序員拼出來的數據源,說不准怎麼來的. DefaultClassOptionsAttribute 加上這個後,BO就在導航欄上出現了,快速新建按鈕也有了,報表中也會出現,我只觀察到了這麼多,這個就是個快捷方式. DefaultListViewOptionsAttribute 在BO上面寫,一些常見的默認列表視圖的控制. DelayedAttribute 在屬性上寫,延遲加載該屬性.官方說是EF用的.但我在xpo中也用過啊! DetailViewLayoutAttribute 在屬性上寫,供在BO上對詳細視圖進行簡單的布局. DomainComponentAttribute 在接口上寫,表明這是一個DC,在非持久化的BO上面寫,表明讓系統生成這個BO的視圖. ExpandObjectMembersAttribute 寫在復雜類型的屬性上面,可以將屬性類型中的屬性展開,在視圖上直接顯示出來.比如,客戶.地址.詳細地址,與詳細地址同級別的還有一堆的屬性,用了這個後就可以一次性的顯示出來了. FieldSizeAttribute 字符型屬性在庫中建立字段時的長度,-1為不限長. FileAttachmentAttribute 應用到類上,表明值是文件類型,需要實現IFileData接口. FileTypeFilterAttribute 在上傳文件時,如何過濾文件名?擴展名? FriendlyKeyPropertyAttribute Specifies a property that is considered an analog of the GUID property to allow the use of more suitable values. ImageEditorAttribute 圖像編輯器的一些設置. ImageNameAttribute 寫在BO上面,設置一個圖標,在列表上,詳細視圖上,都可以看到這個圖標. ImagesForBoolValuesAttribute 寫在布爾型屬性上面,可以指定布爾型值的圖標,比如true用一個對號,false用一個叉叉. ImmediatePostDataAttribute 在web下面有用,寫在屬性上,指示當值發生變化時,是否需要回發到服務端,比如, 總價=單價*數量,那麼,單位,數量變化時,總價需要做個計算,那麼就要在單價,數量上面加上這個Attribute. IndexAttribute 在屬性上面寫,建表時,建個索引出來,為性能捉想. KeyAttribute 寫在屬性上面,指示這個屬性就是主鍵. ListEditorAttribute 指定要使用的列表控件. ListViewFilterAttribute 給列表內置一些過濾條件,在界面上顯示一個下拉框,一選,就過濾啦. LookupEditorModeAttribute 指示搜索對話框長什麼樣子,比如全部顯示在下拉框中,或是彈出個窗口,或是自動,自動是指超過25條(可改)則顯示彈出框.自動會有些性能影響,因為要算當前有多少條數據. ModelDefaultAttribute 在代碼中寫ModelEditor中的默認值,很多東東可以用這個設置了,並且可以替換掉一些前面的屬性,比如本來可以用[XafDisplayName("顯示名")]改為[ModelDefault("Caption","顯示名")].至於Caption這個關鍵字要怎樣知道,可以打開ModelDeditor查看. ModelNodesGeneratorAttribute 自己寫個類,是生成模型的,需要加這個.具體還是需要好幾步的. NavigationItemAttribute 某個BO是否顯示在導航欄中. NonCloneableAttribute 克隆模塊:不允許這個BO克隆. NotClonedInfoAttribute Applied to a business class. Specifies a business class' string property that can hold property values that were not cloned. ObjectCaptionFormatAttribute 指示在詳細視圖中Bo的顯示標題 PropertyEditorAttribute 要使用什麼編輯器,默認都是自動的,只有想改變默認時才用這個. Attributes from the Validation module:
RuleBaseAttribute, 
RuleCombinationOfPropertiesIsUniqueAttribute, 
RuleCriteriaAttribute, 
RuleFromBoolPropertyAttribute, 
RuleIsReferencedAttribute, 
RuleObjectExistsAttribute, 
RuleRangeAttribute, 
RuleRegularExpressionAttribute, 
RuleRequiredFieldAttribute, 
RuleStringComparisonAttribute, 
RuleUniqueValueAttribute, 
RuleValueComparisonAttribute.

這幾個都是做驗證規則用的.

RuleCombinationOfPropertiesIsUniqueAttribute 組合唯一,在類上面,指定多個屬性,這些屬性是組合唯一的.

RuleCriteriaAttribute, 在類上面,數據必須滿足指定的條件.

RuleFromBoolPropertyAttribute, 在布爾型屬性上面,值必須為真.

RuleObjectExistsAttribute, 指定的對象必須存在.

RuleRangeAttribute, 屬性的值必須在指定的范圍內.

RuleRegularExpressionAttribute, 屬性的值必須滿足正則表達式的要求.

RuleRequiredFieldAttribute, 屬性是必填的.

RuleStringComparisonAttribute, 屬性的值和字符串進行比較.

RuleUniqueValueAttribute, 屬性的值必須是唯一的.

RuleValueComparisonAttribute.屬性的值和指定的值(另一個屬性)進行比較.

SearchClassOptionsAttribute 用於全文檢索的一些選項. SearchMemberOptionsAttribute 也是全文檢索用的,設置哪些字段參與或不參與. ToolTipAttribute 屬性的提示文字. ViewItemAttribute Applied to a custom View Item. Registers a View Item in an application and specifies the type of the Application Model's node used by a custom View Item. VisibleInDetailViewAttribute 屬性在詳細視圖中是否可見 VisibleInListViewAttribute 屬性在列表視圖中是否可見 VisibleInLookupListViewAttribute 屬性在搜索視圖中是否可見. VisibleInReportsAttribute 做報表時是否可以選擇這個BO. XafDefaultPropertyAttribute 默認屬性,在引用類型被用於屬性時,用該引用類的哪個字段做為顯示標題. 比如,訂單中的客戶,選擇完成後,應該顯示客戶姓名,那麼[XafDefaultPropety("姓名")]寫在客戶BO上面即可. XafDisplayNameAttribute 指定顯示名稱,比如BO叫Customer,[XafDisplayName("客戶")],寫到BO上面.

你也可以使用一些屬性是.net 提供的(比如 BrowsableAttribute, DefaultPropertyAttribute  DisplayNameAttribute)

下面的列表是在 System.ComponentModel 命名空間下的,在XAF中他們是有效的.

Attribute

說明

備注

BrowsableAttribute 屬性是否可見,指定為false後,相當於詳細視圖,列表視圖,搜索視圖,都不可見了.就相當於一個快捷方式. 通常是要隱藏一個屬性時用它. DefaultPropertyAttribute 和XafDefaultPropertyAttribute是一樣的.:
  • 顯示在搜索編輯器中;
  • 對象的標題,比如詳細視圖中;
  • 全文檢索中也會被用到;
  • 顯示在列表視圖的第一列.
  DescriptionAttribute 做自定義模塊時會用到.指示模塊的備注信息   DisplayNameAttribute

與 XafDisplayNameAttribute 相同.

  PasswordPropertyTextAttribute 在字符串屬性上面寫,編輯器就變成了密碼輸入框.  

 


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved