using System;
using System.Collections.Generic;
using Microsoft.Extensions.Caching.Distributed;
namespace WalkingTec.Mvvm.Core
{
///
/// IBaseVM
///
public interface IBaseVM
{
#region Property
WTMContext Wtm { get; set; }
///
/// UniqueId
///
string UniqueId { get; }
///
/// WindowIds
///
string WindowIds { get;}
///
/// ViewDivId
///
string ViewDivId { get; set; }
///
/// DC
///
IDataContext DC { get; set; }
///
/// VMFullName
///
string VMFullName { get; }
///
/// CreatorAssembly
///
string CreatorAssembly { get; set; }
///
/// CurrentCS
///
string CurrentCS { get; }
///
/// FC
///
Dictionary FC { get; set; }
///
/// Config
///
Configs ConfigInfo { get; }
ISessionService Session { get; }
IDistributedCache Cache { get; }
LoginUserInfo LoginUserInfo { get; }
#endregion
#region Event
///
/// InitVM 完成后触发的事件
///
event Action OnAfterInit;
///
/// ReInitVM 完成后触发的事件
///
event Action OnAfterReInit;
#endregion
#region Method
///
/// 调用 InitVM 并触发 OnAfterInit 事件
///
void DoInit();
///
/// 调用 ReInitVM 并触发 OnAfterReInit 事件
///
void DoReInit();
#endregion
}
}