当前位置:编程学习 > asp >>

Unity在MVC上的应用(上)

本次教程使用的是MVC开发框架,结合Repository模式来展开。上篇暂时没有使用到Unity。

一如既往,先看看DEMO的物理结构图。

1

那些文件我就不一一叙述了,也不难理解。

先看看大致的运行流程。

Step 1

2

 登录账号是HuntSoul 密码是123456 (*^__^*) 嘻嘻……

Step 2

3

这里登录成功的画面。我们点开“任务列表” Check Check今日有什么任务 ~(X X)~

Step 3

4

返回一下 XD,点开“打开仓库”!看看我们仓库的武器 XD

Step 4

5

好了,大致的流程就是这个摸样,正如我所说很简单~下面我们来看看这些简单而丑陋的代码 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 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,