大家有没有类似的小项目demo给我学习一下之类的?打了一堆字,算了,不找借口,我不会啊。看了很多园子里的代码和项目。没有学到精髓?
公司丢了一个需求给我就是根据查询语句把数据展示在网站前台,并且可以下载。看了很多文章,但是时间紧迫,没有太多的时间研究原理。焦头烂额。请大佬们指条明路。哭死
我不想做伸手党啊,但是,我怕时间来不及。。。我很慌
多表查询用left join吧:例如 select f_name(你需要在前台显示的字段名称) from t_class(表名1) as c(别名) left join t_student(表名2) as s(别名) on c.id(表名1的主键) = s.f_id(表名2的外键)也可以其他字段,但是必须两边都有相同的值 where 条件 c.className ='五年级';
上面是查询语句,
现在做数据层的交换,建立一个类,如下:
public IList<StudentInfo> GetUserInfoAll(string connStr(数据库连接字符串), string sqlStr(查询语句)) { using (SqlConnection conn = new SqlConnection(connStr)) { using (SqlCommand cmd = new SqlCommand(sqlStr,conn)) { SqlDataReader sdr = cmd.ExecuteReader(); IList<StudentInfo> list = new List<StudentInfo>(); while (sdr.Read()) { StudentInfo studentInfo= new StudentInfo(); StudentInfo.ID = (Guid) sdr["ID"]; StudentInfo.Name = sdr["studentName"].ToString(); StudentInfo.Class = sdr["studentNum"].ToString(); list.Add(studentInfo); } return list; } }
}
得到一个集合后在WEB显示页面用foreach循环把数据遍历出来,动态生成列表 ,这样我们就可以在网页上看到查询的数据了。在显示数据的窗口加一个下载文档按钮,并绑定点击事件,我们在上面获得数据的同时,也可以把数据保存本地。
private void saveClick(list<StudentInfo>student, EventArgs e) { SaveFileDialog file = new SaveFileDialog();//定义新的文件保存位置控件 file.Filter = "txt文件(*.txt)|*.txt";//设置文件后缀的过滤 if (file.ShowDialog() == DialogResult.OK)//如果有文件保存路径 { StreamWriter sw = File.CreateText(file.FileName); foreach(string mes in student){ sw.Write(mes); //写入文件中 } sw.Flush();//清理缓冲区 sw.Close();//关闭文件 } }
当点击保存按钮时执行上面的代码,所有的问题就解决了
嗯嗯,我先试试,再采纳之类的哦
@多巴胺。: 对了还建一个StudentInfo实体类,就是装数据的,用来传输数据用的,
public StudentInfo(){ private int id;
public int Id
{
get { return id; }
set { id = value; }
}
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
private Class myClass;
internal Class MyClass
{
get { return myClass; }
set { myClass = value; }
} }
相当于你有几个表就要建立几个实体类,记得要给SET和GET方法啊;
@对象不是老婆: 唔,少侠 给个QQ不,我怕写出来有错误。预约你一下 = =
@多巴胺。: 给你的邮箱发给你
@对象不是老婆:
@多巴胺。: 话说我是学JAVA的,上个星期才学.net很多不熟悉,其实你问的问题在网上有很多答案,我这个是最LOW的没啥可讲,我也在学习知识,只要用多了,自然就知道了。
@对象不是老婆: 太急功近利了我,敲了一些项目,觉得他们的不能符合我的要求,我也百度啦,都是抄的,还不全面
@多巴胺。: 你是自己做的项目,还是照着把别人的项目敲一遍,如果是前者是一种好的学习方法,如果是后者这就需要花心思去学了。
@对象不是老婆: = = 敲别人的。因为自己没有一个好的思路,虽然感觉自己的才是通透的
@对象不是老婆: 主要的思路 就这四步是么? = =
@多巴胺。:首先建立数据库和表,其次连接数据库,把数据库中想要得到的数据封装好传给前端,最后你可以用我的方法用IO流的方法把数据下载到本地,简单点的就去网上搜封装好的,例如POI,数据放进去,给它一个存放路径。调用它就可以了,其实有很多方法的,我的只是基础的。
虽然不懂,路过帮顶~
x蟹蟹~么么崽子
q抱歉抱歉!不是很会用这个博问!本来每个人都有豆豆的(除了一楼的崽子),但是结错账了!抱歉,希望你们可以看到这个。
显示数据应该会吧
下载数据请参考 https://blog.csdn.net/wybshyy/article/details/52232642
NPOI 可以么? 看着好像挺舒服的 = =
@多巴胺。: 可以 参考 https://www.cnblogs.com/Raning/p/5872822.html
但是我建议你以完成任务为首 别管用什么做
那我看看学习一下哦,好像看园子里有大神写了自己的框架还是啥的? http://www.cnblogs.com/fish-li/archive/2012/07/17/ClownFish.html
就这个
哇,好多人帮你啊!
数据显示到界面,这一步搞定了吗?
因为这个问题并不是很复杂啊(大家超好的!),简单的数据显示我会了,复杂的多表查询 好像要用LING,在看。
@多巴胺。:
“公司丢了一个需求给我就是根据查询语句把数据展示在网站前台,并且可以下载”
查询语句别人帮你写好的,还是需要你自己写?如果得自己写,你需要学点SQL。
@西漠以西: SQL我会写,只是这个代码,就需要自己啦
@西漠以西: 楼上的一个大佬把SQL 格式都给我了,哈哈哈,很细心
ExcelReport 了解一下,做个导出。
http://www.cnblogs.com/hanzhaoxin/p/4232575.html
这个好像很高端的样子,我研究研究 = = THK~
EF多表查询可以百度下例子,导出的话用NPOI就可以了
– Crazydragcool 6年前@Crazydragcool: 恩恩额 我也注意到这个NPOI了,就在想,这种歌插件是否能够运用于我们公司的项目。不过还是很谢谢!
– 多巴胺。 6年前@多巴胺。: 可以的,显示你做个报表,导出做个按钮,导出显示报表返回的datatable就可以了,网上很多方法的
– Crazydragcool 6年前