用.net做B/S结构的系统一般采用3层结构,假设有一个数据库表    Student {id,name,sex…}    试用程序表述对该信息表的类结构以及增、删、改、查的操作(只需给出接口描述即可)

解决方案 »

  1.   

    晕!!!!
    实体层:新建一个Student类,具体有ID属性、名字等
    逻辑层:Student类,具体有方法:Insert( Model.Student )等
    数据层就不用我说了,具体实现逻辑层的相关东东
    表示层就只接调用逻辑层的方法和检查数据正确性就行了。
      

  2.   

    不就是把一个表当一个实体类操作么?
    针对面试题,选出脑海中以前的想法:
    public interface ITableOperator
    {
        public SqlDataReader ISelect(xxx....){}
        public int IUpdate(xxxx.....){}
        public int IInsert(xxxx.....){}
        public int IDelete(xxxx....){}
    }
      

  3.   

    我一般用dataquicker,codesmith,nhibernate生成
      

  4.   

    谁帮我生成一个,asp.net我都没用过的
      

  5.   

    http://www.cnblogs.com/ltp/archive/2006/03/15/350930.aspx
     动软.Net代码自动生成器
    下载一个,然后自己生成.
      

  6.   

    我连.net都没装,哪位能帮我把代码生成了,贴一份我交任务就行了,多谢多谢!
      

  7.   

    MVC三层:
    M:StudentEntities实体类{id,name,sex…}和数据库表结构字段一一对应
    V:没什么说的,页面表现形式,自定义
    C:DataModule数据模型控制类,StudentCtrl对应实体有相应的程序逻辑操作类,可以包含StudentInsertUpdateDelete( Entities.Student,操作类型枚举(增,删,改) )
    另外,还应该有一层,数据库通用访问类,做作数据库访问接口调用。
    大至就是这些吧...
      

  8.   

    "MVC"当是JSP啊?
    数据访问:Dal
    业务层:Bussiness
    视图层:xxx.aspx
    Dal层代码段:
    sqlconnectionString conn=new sqlconnectionString("连接字符串");
    DataTable ExecuteQuery(strig sql)
    {
    using(sqlDataAdpter sda=new sqlDataAdpter (sql,conn))
    {
    using(Datatable dt =new DataTable())
    {
    sda.EucuteQuery();
    sda.fill(dt);
    retuen dt;
    }
    }
    }
    bool ExecuteNonQuery(string sql)
    {
    using(sqlcommand cmd=new sqlcommand())
    {
    cmd.commandText=sql;
    cmd.connection=conn;
    conn.open(0;
    try
    {
    cmd.ExcuteNonQuery();
    return true;
    }
    catch
    {
    return false;
    }
    finally
    {
    conn.close();
    }
    }
    }Business层:
    dal da=new dal();//也可以改单例调用
    Datatable select()
    {
    return dal.ExcuteQuery("SQL select语句");
    }
    bool insert()
    {
    return ExcuteNonQuery("SQL insert语句");
    }
    bool update(string sql)
    {
    return ExcuteNonQuery("SQL update语句");
    }
    bool del(string sql)
    {
    return ExcuteNonQuery("SQL delete语句");
    }xxx.aspx:
    business bis=new business();
    要返回数据的事件里:
    Dataview1.datasource= bis.select();要添加数据的事件里:
    if(bis.insert());
    {
    添加正确的提示;
    }
    else
    {
    添加错误的提示;
    }
    要修改数据的事件里:
    if(bis.update());
    {
    修改正确的提示;
    }
    else
    {
    修改错误的提示;
    }要删除数据的事件里:
    if(bis.insert());
    {
    删除正确的提示;
    }
    else
    {
    删除错误的提示;
    }that's all,good luck
    顺便问一下,刚才那位用codesmith的
    codesmith生成的nettiers的结构运行流程是什么?
    我急着要用它做个项目,帮帮忙,谢谢了
      

  9.   

    楼主太nb了 vs都没装
    啧啧
      

  10.   

    这个不就是实体层 MODEL 啊
      

  11.   

    哦们都是用CodeSmith自动生成NHibernate 的逻辑层和实体层滴.
      

  12.   

    // Model
    using System;
    using System.Data;
    using System.Configuration;/// <summary>
    /// Student 实体类。
    /// </summary>
    public class Student
    {
        private int _id;
        private string _firstName;
        private string _lastName;
        private string _email;
        // ... public Student()
        {
            //
            // TODO: Add constructor logic here
            //
    }    public Student(int id)
            : this()
        {
            this._id = id;        
        }    public Student(int id, string firstName, string lastName)
            : this(id)
        {        
            this._firstName = firstName;
            this._lastName = lastName;
        }    public int ID
        {
            get { return _id;}
            set { _id = value; }
        }    public string FirstName
        {
            get { return _firstName; }
            set { _firstName =value; }
        }    public string LastName
        {
            get { return _lastName; }
            set { _lastName = value; }
        }    public string Email
        {
            get { return _email; }
            set { _email = value; }
        }
        // ...
    }// BLL
    using System;
    using System.Data;
    using System.Collections.Generic;
    using System.Configuration;/// <summary>
    /// Student 业务逻辑类
    /// </summary>
    public class StudentSys
    {
        static StudentDb dal = new StudentDb(); public StudentSys()
    {
    //
    // TODO: Add constructor logic here
    //
    }    public void CreateStudent(Student student)
        {
            dal.CreateStudent(student);
        }    public void UpdateStudent(Student student)
        {
            bool success = dal.UpdateStudent(student);
            // ...
        }    public void DeleteStudent(int id)
        {
            bool success = dal.DeleteStudent(id);
        }    public Student GetStudent(int id)
        {
            return dal.GetStudent(id);
        }    public IList<Student> GetStudent()
        {
            return dal.GetStudent();
        }
    }// DAL
    using System;
    using System.Data;
    using System.Collections.Generic;
    using System.Configuration;/// <summary>
    /// Student 业务数据类
    /// </summary>
    public class StudentDb
    {
    public StudentDb()
    {
    //
    // TODO: Add constructor logic here
    //
    }    public void CreateStudent(Student student)
        {        
            // Insert a Student into db by ADO.NET
            // ...
        }    public bool UpdateStudent(Student student)
        {
            // Update a Student by ADO.NET
            // ...
            // return true;
            return false;
        }    public bool DeleteStudent(int id)
        {
            // Delete a Student with the specified ID
            // ...
            // return true;
            return false;
        }    public Student GetStudent(int id)
        {
            // Retrieve a Student Info with the specified ID
            // ...
            return null;
        }    public IList<Student> GetStudent()
        {
            // Retrieve all Students
            // ...
            return new List<Student>();
        }
    }
      

  13.   

    // WebUI<%@ Page Language="C#" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><script runat="server"></script><html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>Student List</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="ObjectDataSource1">
                <Columns>
                    <asp:BoundField DataField="LastName" HeaderText="LastName" SortExpression="LastName" />
                    <asp:BoundField DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" />
                    <asp:BoundField DataField="ID" HeaderText="ID" SortExpression="ID" />
                    <asp:BoundField DataField="Email" HeaderText="Email" SortExpression="Email" />
                </Columns>
            </asp:GridView>
            <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="GetStudent"
                TypeName="StudentSys"></asp:ObjectDataSource>
        
        </div>
        </form>
    </body>
    </html>
      

  14.   

    jf up 学习jf up 学习