88 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			88 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using System;
 | |
| using System.Collections.Generic;
 | |
| using System.Text;
 | |
| using Csla;
 | |
| 
 | |
| namespace Templates
 | |
| {
 | |
|   [Serializable()]
 | |
|   class ReadOnlyRoot : ReadOnlyBase<ReadOnlyRoot>
 | |
|   {
 | |
|     #region Business Methods
 | |
| 
 | |
|     // TODO: add your own fields, properties and methods
 | |
|     private int _id;
 | |
| 
 | |
|     public int Id
 | |
|     {
 | |
|       [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
 | |
|       get 
 | |
|       {
 | |
|         CanReadProperty(true);
 | |
|         return _id; 
 | |
|       }
 | |
|     }
 | |
| 
 | |
|     protected override object GetIdValue()
 | |
|     {
 | |
|       return _id;
 | |
|     }
 | |
| 
 | |
|     #endregion
 | |
| 
 | |
|     #region Authorization Rules
 | |
| 
 | |
|     protected override void AddAuthorizationRules()
 | |
|     {
 | |
|       // TODO: add authorization rules
 | |
|       //AuthorizationRules.AllowRead("", "");
 | |
|     }
 | |
| 
 | |
|     public static bool CanGetObject()
 | |
|     {
 | |
|       // TODO: customize to check user role
 | |
|       //return ApplicationContext.User.IsInRole("");
 | |
|       return true;
 | |
|     }
 | |
| 
 | |
|     #endregion
 | |
| 
 | |
|     #region Factory Methods
 | |
| 
 | |
|     public static ReadOnlyRoot GetReadOnlyRoot(int id)
 | |
|     {
 | |
|       return DataPortal.Fetch<ReadOnlyRoot>(new Criteria(id));
 | |
|     }
 | |
| 
 | |
|     private ReadOnlyRoot()
 | |
|     { /* require use of factory methods */ }
 | |
| 
 | |
|     #endregion
 | |
| 
 | |
|     #region Data Access
 | |
| 
 | |
|     [Serializable()]
 | |
|     private class Criteria
 | |
|     {
 | |
|       private int _id;
 | |
| 
 | |
|       public int Id
 | |
|       {
 | |
|         get { return _id; }
 | |
|       }
 | |
|       public Criteria(int id)
 | |
|       {
 | |
|         _id = id;
 | |
|       }
 | |
|     }
 | |
| 
 | |
|     private void DataPortal_Fetch(Criteria criteria)
 | |
|     {
 | |
|       // TODO: load values
 | |
|       _id = criteria.Id;
 | |
|     }
 | |
| 
 | |
|     #endregion
 | |
|   }
 | |
| }
 |