ASP.NET MVC中Code First编程一些小技巧

asp.net mvc 连接mysql 1、新建一个项目选择MVC。 2、使用菜单中的“工具”→“Nuget包管理器”→“程序包管理控制台(O)”安装3个包,要按顺序安装。 Install-Package EntityFramework -Version 6.0.0 Install-Package MySql.Data -Version 6.9.8 Install-Package MySql.Data.Entity -Version 6.9.8 3、以Code First为例。先创建一个类(对应表结构),Key是定义主键,每个表必须有 4、再 阅读详情


1. Code First 中实体类

1. 主建字段
    系统会自动以ID结束的这类创建主键,但有多个这种类型的字段还是指定一个为好
[Key]
public int DetailID { get; set; }

2. 非空字段
[Required,MaxLength(50)] 
//[StringLength(50)] 同上MaxLength
public string DetailTitle { get; set; }

3. 设置长度
[StringLength(500)]
public string DetailDesc { get; set; }

4. 设置外建字段
     如果StyleID是Style表的主建,可以不用写Foreignkey属性
[Required, ForeignKey("Style")] 
public int StyleID { get; set; }

外键关联的Entity
public virtual Style Style { get; set; }

5. 指定字段类型: 
[Column(TypeName="Money")]
public decimal UnitPice { get; set; }


2. DBContext

 public class StyleContext:DbContext
    {
        public StyleContext() : base("name=WMSAidDB") 
        {
            //自动创建表,如果Entity有改到就更新到表结构
            Database.SetInitializer<StyleContext>(new MigrateDatabaseToLatestVersion<StyleContext, ReportingDbMigrationsConfiguration>());
        }

        public DbSet<StyleDetail> StyleDetails { get; set; }

        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {       modelBuilder.Entity<UnfulfilledOrderPart>().ToTable("tb_Order");//设置对应的表       //设置对应的字段格式,长度,非空            modelBuilder.Entity<UnfulfilledOrderPart>().Property(p => p.OrderNumber).IsRequired().HasColumnType("Varchar").HasMaxLength(500);
            modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); //表名为类名,不是上面带s的名字  //移除复数表名的契约
            modelBuilder.Conventions.Remove<IncludeMetadataConvention>();     //不创建EdmMetadata表  //防止黑幕交易 要不然每次都要访问 EdmMetadata这个表
        }

    }

    internal sealed class ReportingDbMigrationsConfiguration : DbMigrationsConfiguration<StyleContext>
    {
        public ReportingDbMigrationsConfiguration()
        {
            AutomaticMigrationsEnabled = true;//任何Model Class的修改將會直接更新DB
            AutomaticMigrationDataLossAllowed = true;
        }
    }


 


3.  延迟加载

EF是默认开启延迟加载,延迟加载的关系表中,必须建立表关系,也就是SQL的FK键

context.Styles.Include("StyleDetails").Where(p => p.ParentStyleID == ParentID);

 

Demo下载:http://files.cnblogs.com/chinabc/MVCD3Demo_EF.rar

 

 

 

 

 

ASP.NET MVC4分步实战学习项目详解 尽管默认路由能满足大多数需求,但实际项目中往往需要更精细的URL控制。例如电商平台可能希望商品详情页具有如下格式:为此,可以在中添加专用路由:// 自定义产品路由(优先级高于默认路由)// 默认路由放在最后重要提示:路由注册顺序至关重要!ASP.NET MVC采用“先匹配先赢”策略,因此更具体的路由应放在通用路由之前。此外,还可结合Attribute Routing(需引入额外包或升级至MVC5+)实现声明式路由,但在MVC4.0中主要依赖集中式配置。 阅读详情

相关推荐

.NET MVC code first 新手代码

新手练习code fisrt的例子,完美运行,需要先将web.config中链接数据库密码以及用户名修改

asp.net mvc EF框架中Code First的使用

Code First 代码优先,手动创建POCO模型,数据层DbContext及映射关系,通过Database.SetInitializer生成数据库,这种方式较灵活,但是需要手动定义实体模型和关系映射。简单理解就是自己写好实体对象和映射关系,最后通过命令生成到数据库中去。

m0_65192155的博客 737

【遥感数字图像处理(朱文泉)】第四章 变换域处理方法

变换域的处理方法

甜子yu的博客 4311

ASP.NET MVC——CodeFirst开发模式

   Entity Framework框架提供了几种开发模式,比如Database First,Model First,Code First。Database First是最老也是应用得最广泛的一种设计方式。Database First这种方式的设计高度依赖于数据库中表的结构,根据表及表间的关系来创建模型。如果后期需求有所变更或者功能有很大变化的话,需要涉及到更改数据库所付出的代价将会很大,因为之前编写好的代码将不再适用于新的表,我们必需重构以更改代码中的逻辑以适应更改之后的表。Model First是创.

cnmeimei的博客 378

基于FPGA的IIR数字滤波器设计

一种是在直接法的基础上,采用预见的算法,目的是提高系统的吞吐量(指对于网络、端口设备或者其他的设施,单位时间内成功传输数据的数量,比特、字节和分组是吞吐量常用的单位),带有预见算法编程实现的IIR数字滤波器有更多的优点,例如:数据传送速度快,效率高等等;设计模拟滤波器时,它的电路一般都很复杂,而且分析起来也很麻烦,电路的复杂性就决定了使用的器件必定很多,很复杂,就这一方面看来,数字滤波器的设计要更加简单灵活,并且模拟电路不容易改变系统的参数,它的性能还很容易受到温度环境的影响,使得噪声很大。

毕业设计区博客 2125

quartusII简易CPU设计

优点可以实现八种运算,数据的存取及运算都能很好的实现,上板也很成功。缺点首先由于自己知识储备的缺乏,只能实现较为简单的8种运算,也是最简单的直接寻址。其次为了方便操作,没有从外部输入数据,都是直接使用存储在存储器中的数据。后续发展后续会在此简易CPU的基础上增加一些功能对CPU进行完善,如算术运算可以考虑是补码运算,输入、输出采用存储缓冲等等,直至完整的全功能的处理器。收获通过这次实践,更熟悉Quartus软件的操作。能过更加清楚每个器件的操作,比如计数器,运算器,译码器等的实现功能。

Kong08242022的博客 3484

Asp.net MVC 中 CodeFirst 开发模式实例

  昨天写的这篇博客因为下班时间到了忘记保存了,好郁闷,得重新写一遍。实习所在公司使用的是CodeFirst开发模式,最近开始参与到公司的项目里面来了,发现这个模式特别好用,建库建表改变字段属性添加删除字段等等操作都无需自己在数据库动手操作,只需要编写代码即可实现,着实是方便了许多。今天来记录一下如何使用CodeFirst开发模式,闲言少叙,下面进入正题。 (一)准备工作   新建三个项目,其...

weixin_33726943的博客 186

QT-使用ECharts显示地图,还有更多惊艳的图表等待你的使用

QT-使用ECharts显示地图前言一、使用步骤1.下载示例2. QT使用HTML文件配置3.使用HTML文件4. 数据交互及自适应总结注意:这个地图是百度的在线地图,需要百度API密钥和在联网的状态下使用。离线使用图表 前言 我上文QT图表chart-饼状图,使用qt自带的图表库charts来显示图表,实现数据可视化,但是QT自带的图表库显示效果并不佳,通俗说,就是不好看。 然而,有这么一个开源图表库,图表种类极多,并且效果良好,能够实现具有很好的视觉冲击的数据可视化。 它就是Apache ECharts

博咯的博客 4898

ASP.NET MVC Code First要点

1.新建Web项目-空的MVC项目MvcMusicStore 2.创建各个实体Models: public class Album { public int AlbumId { get; set; } public int GenreId { get; set; } public int ArtistId { get; set;

zhulongxi的博客 2482

UE5.3像素流送Docker化部署:从Linux服务器搭建到云端实时渲染

本文详细介绍了在Linux服务器上使用Docker容器化部署UE5.3像素流送服务的完整流程。通过将虚幻引擎运行时、信令服务器和TURN服务打包为标准化镜像,利用Docker Compose进行编排,实现了云端实时渲染应用的快速部署、环境一致与弹性扩展,有效解决了传统部署中的环境依赖与运维难题。

k0l1m2n3o的博客 200

2026年1至9月武汉市房地产价格深度分析报告

本报告基于2026年1月至9月武汉市实际成交案例,从成交价格、区域分布、户型结构、价格走势等维度进行深度分析。数据来源包括武汉市住房保障和房屋管理局备案数据、主要中介机构成交记录及典型楼盘网签案例,覆盖全市15个行政区及主要功能板块。

王国平的博客 331

Code First(ASP.NET MVC)模式

ASP.NET MVC中使用Code First(代码优先)开发模式创建数据库 前言 Entity Framework框架提供了几种开发模式,比如Database First,Model First,Code First。Database First是最老也是应用得最广泛的一种设计方式。 Database First这种方式的设计高度依赖于数据库中表的结构,根据表及表间的关系来创建模型。如果后期需求有所变更或者功能有很大变化的话,需要涉及到更改数据库所付出的代价将会很大,因为之前编写好的代码将不再适用于新的

Rodmas的博客 554

【系统架构设计师】论文:论虚拟现实技术的应用与发展

虚拟现实技术是当前科学研究的热点,同时也是国家大力支持发展的核心技术之一。所谓虚拟现实,就是通过计算机等虚拟手段来构造一个非常接近真实世界的虚拟环境,它主要体现在视觉、触觉、嗅觉等方面的逼真模拟来达到高度的沉浸性,也就是如我们通常所说的“身临其境”。

数据知道的博客 1万+

ASP.NET MVC 教程

本文是一份ASP.NET MVC 5入门教程,适合零基础到中级开发者。教程详细介绍了环境准备(Visual Studio 2022、.NET Framework 4.8、SQL Server Express)、项目创建流程和MVC核心结构(Controllers、Models、Views)。重点讲解了Entity Framework 6的Code First开发模式,包括DbContext创建、迁移命令和连接字符串配置。文章还提供了CRUD操作、表单验证、分页等常用功能的实战清单,并推荐了音乐商店、博客系统

m0_57545130的博客 801

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

ASP.NET MVC - SQL 数据库

本文介绍了在ASP.NET MVC 5项目中整合SQL Server数据库的完整方案。主要内容包括:使用Entity Framework 6的Code First模式进行数据库开发;通过LocalDB进行本地开发环境的配置;演示了从模型定义到数据库迁移的完整流程;提供了控制器操作数据库的典型范例;并说明了生产环境部署时连接字符串的修改方法。文章还推荐了企业级应用的标准表结构,并提供了包含完整功能的商城系统项目模板下载。这套技术组合在2025年仍是企业开发的主流选择。

m0_57545130的博客 1303

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Asp.net Mvc教学:Authorize及 Code First 原则的初步应用

目录 第一步:创建项目 第二步:修改web.config(可选) 第三步:创建模型 第四步:创建控制器及相关视图 第五步:修改布局 第六步:修改Global.asax.cs 第七步:再修改web.config文件(可选,粉红色所示,不是红色所示) 第八步:启动网站并测试结果 第一步:创建项目 C#,Asp.net MVC4,Internet 应用程序 第二步:修改web...

格码老师教编程 337

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Asp.Net MVC 常用开发方式之EF Code First

在我们的工作和学习当中,经常会遇到中小型项目,这些项目除了业务上的区别较大外,对于底层和数据访问,其实都差不多。记得以前做项目时,每次都要重复的写底层操作数据库的代码,不仅浪费时间,也无太大意思,后来接触到了Entity Framework,Linq等技术,发现底层原来可以这么简单,既缩短了大量的开发时间,又提高了代码质量。    今天就向大家演示两种搭建底层和技术,在此,也给自己做一个笔记。

浓汤拉面的专栏 832

ASP.NET MVC与Entity Framework技术演进史解析

ASP.NET MVC是一种基于模型-视图-控制器架构的Web开发框架,其核心在于分离关注点与可测试性;Entity Framework则作为ORM代表,通过对象关系映射降低数据访问复杂度。二者在2011年前后迎来重要转折——MVC 3引入Razor视图引擎,EF 4.1首次落地DbContext与Code First模式,标志着微软向声明式、约定优于配置的现代开发范式迈进。这一演进不仅提升了.NET平台的工程效率,更深刻影响了后续ASP.NET Core与EF Core的设计哲学。如今在云原生与微服务架构

diaojin6880的博客 489

新增一个模型(Model)(ASP.NET MVC3系列文章四)

原址:http://www.asp.net/mvc/tutorials/getting-started-with-aspnet-mvc3/getting-started-with-mvc3-part4-cs 这个教程将会使用Microsoft Visual Web Developer 2010 Express Service Pack 1来教会您构建一个基于ASP.NET MVC Web应用

行游客的专栏 2708

ef连接mysql code first_Asp.net Mvc 使用EF6 code first 方式连接MySQL总结

最近由于服务器变更为Linux系统.MsSql for Linux什么时候出来到生产环境使用还是要很长时间的.于是考虑使用Mysql数据库,ORM使用EF.于是先踩下坑顺便记录一下,有需要的tx可以参考下.当你考虑使用EF连接Mysql的时候肯定是已经在网上搜了一堆教程.网上教程基本都是使用控制台做演示.跟着一步步来姿势没错的话可能会正常运行,但项目中使用分层后,把数据层剥离出去,再使用code ...

weixin_42548893的博客 433

一步一步学习ASP.NET MVC3 &EF Code First CTP 5&DI(二)

一,摘要 在上一篇文章(http://blog.csdn.net/suzhi921/archive/2011/02/16/6188768.aspx)中,我们讨论了如何应用MVC3以及Code First建立应用程序,以及应用域实体创建了CRUD的操作,在本篇文章我们将更进一步讨论领域实体,服务层,以及View Models,完成我们Web应用程序剩余的部分.使用的工具如下: 1.ASP.NET MVC 3 2.EF Code First CTP5 3.Unity2.0 二,创建Expen

Steven's Blog 2138

一步一步学习ASP.NET MVC3 &EF Code First CTP 5&DI(一)

一,摘要 本篇文章我们将使用ASP.NET MVC3,Razor,EF Code First创建Web应用程序.覆盖Unity2.0,泛型Repository以及EF Code First的工作单元.需要使用到的工具如下: 1.ASP.NET MVC 3 2.EF Code First CTP5 3.Unity2.0 二,安装工具 安装好Visual Studio2010后继续安装MVC3(http://www.microsoft.com/downloads/en/details.

Steven's Blog 8193

EF Code First 和 ASP.NET MVC3 工具更新

原文名称:EF Code First and Data Scaffolding with the ASP.NET MVC 3 Tools Update 原文地址:http://weblogs.asp.net/scottgu/archive/2011/05/05/ef-code-first-and-data-scaffolding-with-the-asp-net-mvc-3-tools-upda...

ziqi688的博客 56

使用EF code first和asp.net mvc4遇到的问题总结

  最近使用EF code first和asp.net mvc4做项目,遇到些问题,记录一下。   一、EF code first 生成外键列问题。     一般情况下,都是先写一个int型外键id属性,然后写一个外键对象属性,也就是导航属性。 public class UserInfoDemo { //用户组外键Id publ...

a530504862的博客 198

[转] 使用 MVC 5 的 EF6 Code First 入门 系列

译文:http://www.cnblogs.com/Bce-/category/573301.html 原文:http://www.asp.net/mvc/overview/getting-started/getting-started-with-ef-using-mvc/creating-an-entity-framework-data-model-for-an-asp-net-mv...

ahs74497的博客 225
上一篇: sqlserver2008 视图中跨服务器查询
下一篇: HttpPostedFile类
writtyflame
博客等级 码龄17年 6粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值