日期:2013-07-13  浏览次数:20509 次

附1:Websharp主要接口定义:



PersistenceCapable:

public interface PersistenceCapable

{

EntityData EntityData{get;set;}

int ObjectCount{get;}

void AddNew();

bool Next();

void First();

}



PersistenceManager:

public interface PersistenceManager : IDisposable

{

void Close();

bool IsClosed{get;}

Transaction CurrentTransaction{ get;}

bool IgnoreCache{get;set;}



void PersistNewObject(EntityData entity);

void PersistNewObject(PersistenceCapable pc);

void UpdateObject(EntityData entity);

void UpdateObject(PersistenceCapable pc);

void DeleteObject(EntityData entity);

void DeleteObject(PersistenceCapable pc);

void Reload(EntityData entity);

void Reload(PersistenceCapable pc);

void Evict (object pc);

void EvictAll (object[] pcs);

void EvictAll (ICollection pcs);

void EvictAll ();

EntityData FindEntityDataByPrimaryKey(object id,string entityTypeName);

EntityData FindEntityDataByPrimaryKey(object id,EntityData entity);

PersistenceCapable FindObjectByPrimaryKey(object id,PersistenceCapable pc);

PersistenceCapable FindObjectByPrimaryKey(object id,Type entityType);



Query NewQuery();

Query NewQuery(string entityTypeName);

Query NewQuery(string entityTypeName,string filter);

Query NewQuery(string entityTypeName,string filter,QueryParameterCollection paramColletion);



DataAccess NewDataAccess();

}




Transaction:

public interface Transaction

{

void Begin();

void Commit();

void Rollback();

PersistenceManager PersistenceManager{get;}

}




Query:

public interface Query

{

string EntityTypeName{get;set;}

string Filter{get;set;}



QueryParameterCollection Parameters

{

get;

set;

}

string Ordering{get;set;}



bool IgnoreCache{get;set;}



EntityData QueryData();

PersistenceCapable QueryObject(PersistenceCapable ps);

EntityData LoadSubObject(EntityData entity,string subTypeName);

PersistenceCapable QueryObject(PersistenceCapable ps,string subTypeName);

EntityData LoadSubObjects(EntityData entity);





PersistenceManager PersistenceManager{get;}



bool QuerySubObjects{get;set;}

bool IsClosed{get;}

void Close ();

void Open();

}