数据库实例
在多人协作时,可能需要多个不同且独立的数据库。
例如,战斗模块和养成模块可能由2个或更多的工程师负责,虽然可以通过全局数据的形式储存,但您可能希望他们在各自的模块里维护数据且互不干扰,为此,您可以使用数据库实例。
创建自定义的数据库
要创建一个自定义的数据库,您需要定义一个winS.Unity.DataManagement.Database的子类。 在本例中,我们定义一个战斗模块使用的数据库 BattleDatabase 作为演示 :
BattleDatabase.cs
using winS.Unity.DataManagement;
public class BattleDatabase : Database
{
}
使用数据库实例
通过创建 BattleDatabase 的实例,您可以在任意地方使用该数据库。
public class ExampleCustom
{
private readonly BattleDatabase battleDatabase = new BattleDatabase();
public void LoadBattleData()
{
battleDatabase.LoadData<BattleData>();
}
public async void LoadBattleDataAsync()
{
await battleDatabase.LoadDataAsync<BattleData>();
}
public void SaveBattleData(BattleData battleData)
{
battleDatabase.SaveData(battleData);
}
public async void SaveBattleDataAsync(BattleData battleData)
{
await battleDatabase.SaveDataAsync(battleData);
}
}