Unity在MVC上的应用(上)
本次教程使用的是MVC开发框架,结合Repository模式来展开。上篇暂时没有使用到Unity。
一如既往,先看看DEMO的物理结构图。
那些文件我就不一一叙述了,也不难理解。
先看看大致的运行流程。
Step 1
登录账号是HuntSoul 密码是123456 (*^__^*) 嘻嘻……
Step 2
这里登录成功的画面。我们点开“任务列表” Check Check今日有什么任务 ~(X X)~
Step 3
返回一下 XD,点开“打开仓库”!看看我们仓库的武器 XD
Step 4
好了,大致的流程就是这个摸样,正如我所说很简单~下面我们来看看这些简单而丑陋的代码 XD。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace UnityAndMVC2_Demo2.Models
{
public class Entity
{
public int ID { get; set; }
}
}
Entity类作用在于标示对象。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace UnityAndMVC2_Demo2.Models
{
public class Account:Entity
{
public string AccountID { get; set; }
public string AccountPwd { get; set; }
public string LickName{get;set;}
public string Age { get; set; }
public string Email { get; set; }
public string Cellphone { get; set; }
public List<Task> Tasks { get; set; }
public List<StoreHouse> Stores { get; set; }
}
}
这个是我们的 账号模型,和传统的游戏账号相比,当然这个简单很多,不过基于教程,我们无需太过复杂,恰到理解就可以了,以上英文我想你们都不用我一一解释其属性了吧?XD 要提一提的是,本教程没有使用到数据库,所以对于DB First的程序员,可能比较难理解,不过这个刚好是给你们一个新的视野去尝试面向对象(OO),这种方式貌似就是业界所说的Code First吧?或者我所理解的Model First~XD. 还是要解释一下关键的地方。 Account类有两个聚合列表对象Task(任务)和StoreHouse(仓库),是一对多关系。这里的仓库有点纠结,写教程的时候一时想歪了,明白我说的朋友就凑合看吧,哈哈。墨迹了这么多,下面的Model代码就不一一解释了。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;namespace UnityAndMVC2_Demo2.Models
{
public class Task : Entity
{
public string TaskName { get; set; }
public string TaskContent { get; set; }
public string TaskStatus { get; set; }
public Account Account { get; set; }
}
}
using System;using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace UnityAndMVC2_Demo2.Models
{
public class StoreHouse : Entity
{
public string GoodsName { get;set;}
public int GoodsNum{get;set;}
public float GoodsKg { get; set; }
public Account Account { get; set; }
}
}
好了,刚才说到我没使用数据库,那图片上的数据如何解释?恩,聪明的你已经想到了,那个DBContext是一个数据生成类,说白了就是一个假的数据库,为了测试,这个必需的,大家无需太过在意我的方式,你喜欢的可以随意模拟一个DB,用NBuilder也可以~不一一解释用法。来看看DBContext
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace UnityAndMVC2_Demo2.Models
{
public class DBContext
{
public List<Account> Accounts { get; set; }
public DBContext()
{
Accounts = new List<Account>();
Account n_account = new Account()
{
ID = 1,
AccountID = "HuntSoul",
AccountPwd = "123456",
LickName = "桀骜的灵魂",
Age = "44",
Cellphone = "139XXXXXXXXX",
Email = "31580941X@qq.com",
Tasks = new List<Task>()
{
new Task()
{
ID=1,
TaskName="Unity And MVC practice Demo2",
TaskContent="...",
TaskStatus="已完成"
} , new Task(){ ID=2, TaskName="每日打酱油", TaskContent="...", &n
补充:Web开发 , ASP.Net ,