.Net机试题——编写一个BS架构的多层表结构的信息管理模块
要求:
编写一个BS架构的多层表结构的信息管理模块,用户体验需要注意。包含错误处理,需要最终能完整的跑起来。页面可以不美化,但是整洁还是必须的。在不能完成详细功能需求的情况下优先保证基本功能。
- 1. 基本功能:
完成整个多层表结构模块的查询,新建,编辑功能。
- 2. 详细功能需求:
多层表的所有操作在DataSet中执行,包括新建,删除,编辑等操作,在tb_module_info表编辑页面 点击保存按钮后将所有的修改一次性提交到数据库,并且要包在事务中,任何环节出问题则回滚操作。
- 3. 数据表
create_date_d 字段不在任何地方显示,新建记录时自动填写该字段。
tb_module_info
|
Column |
Type |
Null |
Description |
|
module_id_n |
Numeric(18,0) |
Not Null |
PK(indentity) |
|
module_no_c |
Nvarchar(50) |
Null |
|
|
module_name_c |
Nvarchar(50) |
Null |
|
|
is_alive_c |
Nvarchar(1) |
Null |
Y:Yes,N:No |
|
module_note_c |
Nvarchar(max) |
Null |
|
|
create_date_d |
Datetime |
Null |
tb_module_type_info
|
Column |
Type |
Null |
Description |
|
module_type_id_n |
Numeric(18,0) |
Not Null |
PK(indentity) |
|
module_id_n |
Numeric(18,0) |
Null |
Fk(tb_module_info.module_id_n) |
|
module_type_name_c |
Nvarchar(50) |
Null |
|
|
is_alive_c |
Nvarchar(1) |
Null |
Y:Yes,N:No |
|
module_type_note_c |
Nvarchar(max) |
Null |
|
|
create_date_d |
Datetime |
Null |
tb_module_type_news_info
|
Column |
Type |
Null |
Description |
|
module_type_news_id_n |
Numeric(18,0) |
Not Null |
PK(indentity) |
|
module_type_id_n |
Numeric(18,0) |
Null |
Fk(tb_module_type_info.module_type_id_n) |
|
module_type_news_title_c |
Nvarchar(50) |
Null |
|
|
module_type_news_titleimg_url_c |
Nvarchar(200) |
Null |
|
|
is_alive_c |
Nvarchar(1) |
Null |
Y:Yes,N:No |
|
module_type_news_text_c |
Nvarchar(max) |
||
|
remark_c |
Nvarchar(max) |
Null |
|
|
create_date_d |
Datetime |
Null |
- 4. 页面要求
a) tb_module_info查询页面
查询字段:Module_no_c(模糊查询),Module_name_c(模糊查询),is_alive_c
查询结果显示:Module_no_c,Module_name_c,is_alive_c,Module_note_c
查询按钮:点击查询按钮根据 查询字段的值,进行查询显示出查询结果。
清空按钮:清空查询字段内输入的内容JS实现
新建按钮:弹出tb_module_info表编辑页面,新建一条tb_module_info记录
查询结果:使用Grid显示,点击Module_no_c字段进入Tb_module_info表编辑页面,显示点击的记录的内容。
b) tb_module_info表编辑页面
新建子记录按钮:弹出tb_module_type_info编辑页面,新建一条tb_module_type_info表记录。
保存按钮:保存所有修改并关闭编辑页面
删除按钮:删除当前记录以及其下属的所有子记录,关闭编辑页面。
返回按钮:不做任何操作直接关闭编辑页面
子表显示:子表使用Grid显示,显示module_type_no_c,module_type_name_c,is_alive_c字段,点击module_type_no_c字段进入tb_module_type_info表编辑页面,显示点击的记录的内容。
c) tb_module_type_info表编辑页面
新建子记录按钮:弹出tb_module_type_info编辑页面,新建一条Tb_module_type_info表记录。
确定按钮:保存所有修改并关闭编辑页面
删除按钮:删除当前记录以及其下属的所有子记录,关闭编辑页面。
返回按钮:不做任何操作直接关闭编辑页面
子表显示:子表使用Grid显示,显示module_type_no_c,module_type_name_c,is_alive_c字段,点击module_type_no_c字段进入tb_module_type_info表编辑页面,显示点击的记录的内容。
d) tb_module_type_news_info表编辑页面
确定按钮:保存所有修改并关闭编辑页面
删除按钮:删除当前记录以及其下属的所有子记录,关闭编辑页面。
返回按钮:不做任何操作直接关闭编辑页面
.Net机试题——编写一个BS架构的多层表结构的信息管理模块的更多相关文章
- 开源一个适用iOS的数据库表结构更新机制的代码
将前段时间开源的代码.公布一下: ARDBConfig On the iOS, provide a database table structure update mechanism, ensure ...
- sql server 小技巧(7) 导出完整sql server 数据库成一个sql文件,包含表结构及数据
1. 右健数据库 –> Tasks –> Generate Scripts 2. 选择所有的表 3. 下一步,选择Advanded, Types of data to script ...
- 面试题之java 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 要求不能出现截半的情况
题目:10. 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串. 但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输 ...
- java算法面试题:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个, 如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉的半个”。
package com.swift; import java.util.Scanner; public class Hanzi_jiequ { public static void main(Stri ...
- Java算法面试题:编写一个程序,将e:\neck目录下的所有.java文件复制到e:\jpg目录下,并将原来文件的扩展名从.java改为.jpg
package com.swift; import java.io.File; import java.io.FileFilter; import java.io.FileInputStream; i ...
- java算法面试题:编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。
package com.swift; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File ...
- Java基础面试题: 份证号码组成规则是前4位是代表省份和地区 编写一个程序,通过身份证号码判断某人是否是武汉人以及其性别。
package com.swift; public class ID_Where_Male_Test { public static void main(String[] args) { /* * 中 ...
- 常看常遇见之一——BS架构VS CS架构
常看常遇见之一——BS架构VS CS架构 1.BS架构 即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构.在这种结构下,用户 ...
- IM服务器:编写一个健壮的服务器程序需要考虑哪些问题
如果是编写一个服务器demo,比较简单,只要会socket编程就能实现一个简单C/S程序,但如果是实现一个健壮可靠的服务器则需要考虑很多问题.下面我们看看需要考虑哪些问题. 一.维持心跳 为何要维持心 ...
随机推荐
- js 、c# 编码解码
escape不编码字符有69个:*,+,-,.,/,@,_,0-9,a-z,A-Z encodeURI不编码字符有82个:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@ ...
- GBDT、XGBOOST、LightGBM调参数
总的认识: LightGBM > XGBOOST > GBDT 都是调参数比较麻烦. GBDT分类的最佳调参数的讲解: Gradient Boosting Machine(GBM)调参 ...
- FineReport——获取控件值和单元格值
设置单元格的值(填报预览): //contentPane.setCellValue(1,0,"abc");//参数面板给单元格赋实际值,即可填报 contentPane.curLG ...
- javascript 练习题目答案
//廖雪峰的博客的这个教程的答案//https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb300 ...
- XPATH语法(二)
节点(node) 在 XPath 中,有七种类型的节点:元素.属性.文本.命名空间.处理指令.注释以及文档(根)节点.XML 文档是被作为节点树来对待的.树的根被称为文档节点或者根节点. 以下面这xm ...
- Java枚举的小知识点
enum 是jdk1.5引入的,使用它可以创建枚举类型,就像使用class创建类一样. enum关键字创建的枚举类型默认是java.lang.Enum(一个抽象类)的子类 用法1 常量 一般定义常量都 ...
- hdu3183 rmq求区间最值的下标
两个月前做的题,以后可以看看,是rmq关于求区间最值的下标 /* hdu3183 终点 给一个整数,可以删除m位,留下的数字形成一个新的整数 rmq 取n-m个数,使形成的数最小 */ #includ ...
- poj2828 伸展树模拟
用伸展树模拟插队比线段树快乐3倍.. 但是pojT了.别的oj可以过,直接贴代码. 每次更新时,找到第pos个人,splay到根,然后作为新root的左子树即可 #include<iostrea ...
- IntelliJ IDEA 下的SVN使用
最近公司的很多同事开始使用IntelliJ Idea,便尝试了一下,虽然快捷键与eclipse 有些不同,但是强大的搜索功能与“漂亮的界面”(个人认为没有eclipse好看 ),还是值得我们去使用的. ...
- 步步为营-21-xml的增删改查
1 增加(存在则添加,不存在则新建) //对xml的操作-- XmlDocument doc = new XmlDocument(); if (File.Exists("Person.xml ...