EF6 在原有数据库中使用 CodeFirst 总复习(五、生成发帖页面)

有点与在原有数据库中使用 CodeFirst 远了,不过是总复习吗,总得全面点。

一、在用户表(Users)中插入两个用户

二、生成发帖界面

MVC生成的界面很多,也没使用Ajax,实际开发中很少会使用,这里只是为了演示。

但无论用什么生成,特性、实体对象等都是要用到的。

生成之前要编译一下。

三、先试试看能不能运行

空空如也

应该显示用户名,显示成登陆名了(其实预想的是不在新增和修改时显示,未考虑到列表),删除标记怎么也显示出来了,还有内容,能显示的下吗。。。

四、列显示问题

让列表显示用户,正好特性设错了,嘿嘿。就让它显示吧,一会再到新增和修改里删除相应内容。

运行后页面如下:

登录名还未改,并且应放在后面。

五、将登录名改为用户,并放到后面

未找到自动生成时排序顺序的特性,只能手动去拖代码了,郁闷吧?!

列别显示为:

系统使用登陆名未使用显示名可能是因为登陆名在前面

六、血的教训

自动生成列表框使用包含ID和包含Name的列,如果有多个Name,则使用前面的,为了记住它,我把用户名拖到了前面:

七、重新迁移,迁移后数据库中的字段顺序却不会改,嘿嘿,我用力的把它也拖到了前面(生成列表时并不以数据库中的顺寻为准)

八、删除Post控制器和Views里的Post文件夹,重新生成并运行

九、你就喜欢在前面?我非让你到后面去,只能安装上面的再拖一次代码了

列别显示为:

顺序真是个大问题,好在我们实际开发时一般不用它生成,我们自己生成,就可以想办法用特性等方法解决了。

拖代码起始也很简单,选中th或td,拖到后面,按Ctrl + E + D,自动排版一下就可以了,我一般都是习惯按Ctrl + E + D + S

十、看看我们的新增界面

顺序也能将就了,内容不是多行文本,不应该显示用户,用户是我们根据登陆的当前用户自己添加进去的。

改为了多行文本,顺便去掉了ntext

没查ntext和max那个更长,只是max更大一点,你喜欢长的还是大的?重新迁移一下自己去数据库看吧。

十一、去掉用户,在新增时加上

在Creat.cshtml和Edit.cshtml中删除下面代码

<div class="form-group">

           
@Html.LabelFor(model => model.UserID, "UserID", new { @class =
"control-label col-md-2" })

            <div
class="col-md-10">

               
@Html.DropDownList("UserID", String.Empty)

               
@Html.ValidationMessageFor(model => model.UserID)

           
</div>
       
</div>

修改控制器

运行看看:

怎么有男性话题?不是软删除了吗?

这个软删除真是很麻烦,先去把这个改掉吧,显得严谨一些,当然我们也只改此一处   :)

像复制粘贴不,你喜欢B还是喜欢U?

编译运行看看

点确定啊,这样就差不多了

十二、还记得我们的Post实体对象吗,和Blog不一样的那个地方

实践也证明了,bool 系统会自动添加默认值 false的,其它的呢?明天查查资料吧

EF6 在原有数据库中使用 CodeFirst 总复习(五、生成发帖页面),布布扣,bubuko.com

时间: 2025-01-17 23:02:28

EF6 在原有数据库中使用 CodeFirst 总复习(五、生成发帖页面)的相关文章

EF6 在原有数据库中使用 CodeFirst 总复习(一、搭建基础环境)

本来以为已经会了,可动手时发现许多问题还是模糊不清,正所谓眼高手低.只能重新查资料,再复习一遍. vs.net2013 ef6 mvc5 sqlserver2008 一.建立数据库  Blogging 二.创建表,插入测试数据 CREATE TABLE [dbo].[Blogs] (     [BlogId] INT IDENTITY (1, 1) NOT NULL,     [Name] NVARCHAR (200) NULL,     [Url] NVARCHAR (200) NULL,  

EF6 在原有数据库中使用 CodeFirst 总复习(三、重建迁移)

position:static(静态定位) 当position属性定义为static时,可以将元素定义为静态位置,所谓静态位置就是各个元素在HTML文档流中应有的位置 podisition定位问题.所以当没有定义position属性时,并不说明该元素没有自己的位置,它会遵循默认显示为静态位置,在静态定位状态下无法通过坐标值(top,left,right,bottom)来改变它的位置. position:absolute(绝对定位) 当position属性定义为absolute时,元素会脱离文档流

EF6 在原有数据库中使用 CodeFirst 总复习(四、新建实体对象)

position:static(静态定位) 当position属性定义为static时,可以将元素定义为静态位置,所谓静态位置就是各个元素在HTML文档流中应有的位置 podisition定位问题.所以当没有定义position属性时,并不说明该元素没有自己的位置,它会遵循默认显示为静态位置,在静态定位状态下无法通过坐标值(top,left,right,bottom)来改变它的位置. position:absolute(绝对定位) 当position属性定义为absolute时,元素会脱离文档流

EF6 在原有数据库中使用 CodeFirst 总复习(二、新的需求,简单修改原有表)

position:static(静态定位) 当position属性定义为static时,可以将元素定义为静态位置,所谓静态位置就是各个元素在HTML文档流中应有的位置 podisition定位问题.所以当没有定义position属性时,并不说明该元素没有自己的位置,它会遵循默认显示为静态位置,在静态定位状态下无法通过坐标值(top,left,right,bottom)来改变它的位置. position:absolute(绝对定位) 当position属性定义为absolute时,元素会脱离文档流

从数据库中取出数据,使用freemarker生成word文档

这个星期做数据字典功能,有一项任务就是将数据库中的每个表的字段导出,生成word文档,在综合比较网上各种技术之后,参照csdn上骆豪的博客完成了任务. 骆昊的链接:http://blog.csdn.net/jackfrued/article/details/39449021 首先打开word文档,建立自己所需要的模板,然后将word保存为XML的格式,这里可能出现的一个问题就是需要填入的内容放上${}占位符的时候可能会出现字符分离的情况,所以建议先将需要用${}占位符的地方用中文写在word里然

MVC4+EF5+Oracle项目点滴记录(001)将数据库中的数据用NPOI导出生成excel

关于NOPI 2.0在项目中的使用 1.在官网下载 NPOI 文件包 http://npoi.codeplex.com/releases 下载后将NPOI.dll和ICSharpCode.SharpZipLib.dll加载到项目中  最好是全部加载(NPOI.OOXML.dll.NPOI.OpenXml4Net.dll.NPOI.OpenXmlFormats.dll) 2.在三层中的Model层中新建一个类,专门用来处理数据表导成Excel,这里先导出数据库City表中的全部信息 代码如下 (注

如何将数据库中的值经过servlet传入到jsp页面,并且用EL表达式显示出值

方法一:通过id查询某一数据库表中具体的行,将值封装在相应的对象中,如下面的对象Notice servlet中 String noticeId=request.getParameter("noticeId"); Notice displayEditnotice=publicnoticeservice.displayEditnotice(Integer.valueOf(noticeId)); request.setAttribute("list_displayEditnotic

Oracle数据库中序列(SEQUENCE)的用法详解

在Oracle数据库中,序列的用途是生成表的主键值,可以在插入语句中引用,也可以通过查询检查当前值,或使序列增至下一个值.本文我们主要介绍了序列的用法,希望能够对您有所帮助. AD: 在Oracle数据库中,什么是序列呢?它的用途是什么?序列(SEQUENCE)其实是序列号生成器,可以为表中的行自动生成序列号,产生一组等间隔的数值(类型为数字).其主要的用途是生成表的主键值,可以在插入语句中引用,也可以通过查询检查当前值,或使序列增至下一个值. 创建序列需要CREATE SEQUENCE系统权限

查询一个月最后一天的总用户数,数据库中没有保存最好一天的数据,就查询本月数据库已存有的最后一天的数据

select total_user from a_user_no where date_time=(select max(date_time) from a_user_no  where '2013-05'+ "'=to_char(date_time,'yyyy-mm')); 通过max 函数来去5月份出现最大日期的数据 查询一个月最后一天的总用户数,数据库中没有保存最好一天的数据,就查询本月数据库已存有的最后一天的数据,布布扣,bubuko.com