zoukankan      html  css  js  c++  java
  • MVC4.0系统开发新手历程1

    MVC4.0系统开发新手历程(一)

     接手了一个简单的销售奖金计算的项目,虽然不算大但是业务逻辑比较复杂,还夹杂了很多的特殊情况,毕竟是大公司什么样的人都有,好了不多说切入正题,项目是公司的一个前辈负责的,在他做系统架构的时候让我们了解下MVC4.0更新的基本知识,对于MVC来说做项目之前我就简单的停留在知道他是Model-View-Controller的简写至于具体是什么,怎么做则完全没有了解。

          项目果然是最锻炼人的,在项目的架构带来之后,我看了下大概分为以下这几个部分:

                 (1) Model项目 存放数据库表的Model 以及用来展示的 View_Model这些以后都会有讲的,数据表对应的Model主要是有数据i验证部分                        

                  (2)Service项目 由于整个项目是一个B/S项目,数据库是在公司的机房,数据访问是要读取公司的数据库的 ,所以和数据操作相关的都放在了这个项目里面了 为了便于维护,整个项目主要使用的Web Api和Linq To Sql开发

                  (3) Reward 项目这个是和业务息息相关的部分,也是向客户展示的部分,也就是传统意义上的 UI ,当然MVC本质上就是UI层的表现形式,说起来我之前一直以为是和三层一样的数据架构,但他只是三层架构中的UI层,通过MVC开发UI层实现了页面和数据的真正意义上的分离。在这个项目里面主要用到的技术是MVC ,jquery.easyui,WebApi调用等等。

         开发工具升级到了VS2012, 感谢万能的度娘。

      

    复制代码
    复制代码
    @using GM360_REWARD_Model;
    @using GM360_REWARD_UTILITY;
    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width" />
        <title>@ViewBag.Title</title>
        @Styles.Render("~/Content/style.css", "~/themes/default/easyui.css")
        @Scripts.Render("~/Scripts/jquery-1.4.2.min.js")
        @RenderSection("js_css", false)
        <style type="text/css">
            .foot {
                left: 0;
                bottom: 0;
                POSITION: absolute;
                 100%;
                height: 36px;
            }
        </style>
        <script type="text/javascript">
            $(document).ready(function () {
                var _url = window.location.href;
                var _startIndex = _url.indexOf("//") + 2;
                var _subStartIndex = _url.indexOf("/", _startIndex);
                var _strMark = _url.substring(_subStartIndex + 1, _url.indexOf("/", _subStartIndex + 1));
                $(".main_meau li").each(function (index, item) {
    
                    var flag = $(item).children("a").attr("href").indexOf(_strMark);
                    if (flag > -1) {
                        $(this).removeClass("dh_4");
                        $(this).addClass("dh_4");
                    }
                });
            });
        </script>
    </head>
    <body>
        <div class="top_head">
            <div class="tophead_left">
                <div class="left_logo">
                    <img src="~/Images/logo_01.gif" />
                </div>
                <div class="main_meau">
                    <ul>
                        <li>
                            <a href="/DataInfoAndCal/Index" onclick="javascript:location.replace(this.href);event.returnValue=false;">数据源导入</a></li>
                        <li>
                            <a href="/InqueryAllReward/Index" onclick="javascript:location.replace(this.href);event.returnValue=false;">奖金查询</a></li>
                        <li>
                            <a href="/BadDebt/Create/" onclick="javascript:location.replace(this.href);event.returnValue=false;">坏账登记</a></li>
                        <li>
                            <a href="/SaleRelationship/Index" onclick="javascript:location.replace(this.href);event.returnValue=false;">销售带队关系</a></li>
                        @if ((Session["User"] as GM360_REWARD_Model.User) != null && (Session["User"] as GM360_REWARD_Model.User).UserName == "admin")
                        {                        
                            <li>
                                <a href="/home/DownLoad/" onclick="javascript:location.replace(this.href);event.returnValue=false;">历史数据下载</a>
                            </li> 
                        }
                    </ul>
                </div>
            </div>
            <div class="tophead_right">
                <div class="top_right_zi">
                    <div class="zi_left">
                        欢迎您!<b id="username">@if ((Session["User"] as GM360_REWARD_Model.User) != null)
                                             { @((Session["User"] as GM360_REWARD_Model.User).UserName);
                                             }</b>&nbsp;
                    </div>
                    <div class="zi_right">
                        <ul>
                            <li>
                                <a href="/User/Exit">退出系统</a></li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>
        @RenderBody()
        <div class="foot">
            <div class="foot_con">
                版本信息 2013@copyright xxxxxxxxxxxxxxxxxxxx             
            </div>
        </div>
        @*@Scripts.Render("~/bundles/jquery")
        @RenderSection("scripts", required: false)*@
    </body>
    </html>
    复制代码
    复制代码

      这是Shared 文件夹下的_Layout.cshtml文件,以后所有的View页面都是以这个页面为模板的  简单的给大家说下,希望高手指正, 给新手一点参考    顶部是 引用的两个命名空间

    复制代码
    复制代码
    @using GM360_REWARD_Model;
    @using GM360_REWARD_UTILITY;
    复制代码
    复制代码

    引用都要用到的CSS JS 文件 以及给页面另外存放的 地方

    复制代码
    复制代码
      @Styles.Render("~/Content/style.css", "~/themes/default/easyui.css")
        @Scripts.Render("~/Scripts/jquery-1.4.2.min.js")
        @RenderSection("js_css", false)
    复制代码
    复制代码
    复制代码
    复制代码
      @RenderBody()
    复制代码
    复制代码

    上面的这个  @RenderBody() 是添加内容的地方,页面的大概布局就是这个样子 ,明天继续,因为这个项目已经完成了 ,不太能重现当时的错误,所以只能按照开发的顺利 来一点一点的讲解,有什么问题可以留言。因为不经常发文章所以uk按起来可能会比较乱,多指正.

     
     
     
  • 相关阅读:
    可爱的中国电信 请问我们的电脑还属于我们自己吗?
    了解客户的需求,写出的代码或许才是最优秀的............
    DELPHI DATASNAP 入门操作(3)简单的主从表的简单更新【含简单事务处理】
    用数组公式获取字符在字符串中最后出现的位置
    在ehlib的DBGridEh控件中使用过滤功能(可以不用 MemTableEh 控件 适用ehlib 5.2 ehlib 5.3)
    格式化json返回的时间
    ExtJs中使用Ajax赋值给全局变量异常解决方案
    java compiler level does not match the version of the installed java project facet (转)
    收集的资料(六)ASP.NET编程中的十大技巧
    收集的资料共享出来(五)Asp.Net 权限解决办法
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3277366.html
Copyright © 2011-2022 走看看