您的位置:首页 > 编程语言 > ASP

(ASP.NET MVC4 入门学习笔记)学习自己建项目1----建项目、配路由、配数据库

2014-05-15 11:13 816 查看
一切从零开始。

先创建一个空的 ASP.NET MVC4 Web 应用程序。创建成功之后,解决方案中显示如下:



搜了一下App_Start下各文件的作用,摘录两段:

(1) “The files have the code that manages the bundler configuration, global filters and the route table. In the past these lived in global.asax and they have been moved to the App_Start and their own classes. They are all referenced in the global.asax appstart
anyways.”

(2) "在Global.asax文件代码中,我们发现已经把过滤器,路由器,以及对样式表和脚本捆绑(Bundles)移到了其他页面,就是在根目录下的App_Start文件夹内。"

貌似应该有个BundleConfig.cs文件,这儿换成了WebApiConfig.cs,不知道为什么。这些初始文件都是干嘛的、具体怎么用也都还不清楚,只知道在RouteConfig下怎么配置路由,只是现在还没建任何Controller,稍后再配。得,先配上也行,打算一会儿先建一个IndexController,就先默认跳到Index页面吧。实现如下:

public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Index", action = "Index", id = UrlParameter.Optional },
namespaces:new string[]{"MyPracticeProject.Controllers"}
);
}


点击调试运行,VS会使用一个随机端口的Web服务。这个端口号如何控制还不知道,暂时搁置。

(这儿后来查了一下自己指定端口号的方法,转载过来了,见《为使用 Visual Studio 开发服务器的网站项目指定端口
》,或 http://msdn.microsoft.com/zh-cn/library/ms178109(v=vs.100).aspx)


然后添加IndexController,并添加视图,运行:



打算先做个用户管理和后台登录。数据字典参照公司现有的,用户表如下,其他相关再慢慢修改完善吧。

表名:MPP_User 所属功能:

功能描述:用户表 主键:cUserID

序号

字段名称
字段描述
类型(长度)

关联表
关联字段
备注
1

cUserID

主键

Char(32)



Oracle的Sys_guid()
2

nUserName

姓名

nvarchar(25)



3

nLoginName

登录名

nvarchar(25)



4

nPassword

密码

nvarchar(25)



5

cRoleID

角色

Char(32)



MPP_Role

cRoleID

关联角色表

6

cAreaID

地区ID

Char(32)



MPP_Area

cAreaID

7

cSchoolID

学校ID

Char(32)



MPP_ School

cSchoolID

8

nIDCard

身份证号

nvarchar(25)



9

iSex

性别

int



0:男,1:女

10

nCellPhone

手机

nVarchar(25)



11

nEmail

邮箱

nvarchar(25)



12

nBirthDate

出生日期

nvarchar(25)



14

nRemark

备注

nvarchar(100)



备注信息

15

iValidState

有效状态

int



0:无效,1:有效

(默认为1)

16

dOperTime创建时间DateTime
开始建数据库。用的是 SQL Server 2008。新建查询,执行以下SQL:

use master
go
--======================================================================
--				我的练习项目
--======================================================================
if exists(select * from master..sysdatabases
where name=N'MyPracticeProjectDB')
drop database MyPracticeProjectDB
go

create database MyPracticeProjectDB
go

use MyPracticeProjectDB
go

--=============
--   用户表
--=============
if exists(select * from MyPracticeProjectDB.sys.tables
where name=N'MPP_User')
drop table MPP_User
go

CREATE TABLE MPP_User(
CUSERID char(32) primary key,--用户ID
NUSERNAME nvarchar(25) NULL, --用户姓名
NLOGINNAME nvarchar(25) NULL,--登录名
NPASSWORD nvarchar(25) NULL, --密码
CROLEID char(32) NULL,       --用户身份(普通用户/管理员等)
CSCHOOLID char(32) NULL,     --学校ID
CAREAID char(32) NULL,	     --学校所属地区ID
NIDCARD nvarchar(25) NULL,   --身份证号
ISEX int NULL,		     --性别
NCELLPHONE nvarchar(25) NULL,--手机号
NEMAIL nvarchar(25) NULL,    --邮箱
NBIRTHDATE nvarchar(25) NULL,--出生日期
NREMARK nvarchar(100) NULL,  --备注
IVALIDSTATE int default 1 NOT NULL,	       --有效状态
DOPERTIME datetime default(getdate()) NOT NULL --创建时间
)
go

select * from MPP_User


添加字段简介:(不知道是不是这样,只是看到若是在已有表格上右键选择“编写表脚本为...”-->"CREATE到..."之后,有这样的语句。)

EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MPP_User', @level2type=N'COLUMN',@level2name=N'CUSERID'
GO


建好表格后,在程序中配置数据库连接字符串。打开项目目录最下面的Web.config,在其<configuration>下添加如下代码:
<connectionStrings>
<add name="ConnString"
connectionString="Data Source=.;Initial Catalog=MyPracticeProjectDB;User ID=Andy;Password=111;"
providerName="System.Data.SqlClient"/>
</connectionStrings>
连接字符串各项的含义网上多的是,不再赘述。配置好之后怎么用呢?对XML还不大懂,比着葫芦画瓢吧。在项目下添加一个文件夹App_Config,再在下面添加一个类,命名为DBConfig.cs。在该类中定义一个字符串将配置的连接字符串取出来:

public class DBConfig
{
//配置数据库连接字符串(从Web.config读取)
public static string DBConnectionString = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString;
public static string DBProviderName = ConfigurationManager.ConnectionStrings["ConnString"].ProviderName;
}


这个连接字符串不在配置文件中定义,而直接在类中定义应该也是可以的吧,只不过修改起来会有不便。

配这个有点儿操之过急了哈,到时候要引入DBHelper的时候,直接在那里面定义就是了。(现在还没达到水平自己写DBHelper,以后再说吧。)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐