发布一个自己写的企业站源码

开发 后端
数据库文件也附带其中 (如用数据库文件请在项目路径 Admin-->Items-->UserList后台代码中 BasePage改为继承System.Web.UI.Page 运行该页面为用户添加权限 其它类似)BasePage用作权限判断

因为项目前台是多变的所以本项目的主要方向在后台         

前台是修改的别人模板(具体记不清在哪儿下的了 所以未放链接  如有看见请联系本人 )

主要采用技术 vs2008+sqlserver2005    辅助: ztree + codesimth +artdialog +kindeditor 

数据库文件也附带其中 (如用数据库文件请在项目路径 Admin-->Items-->UserList后台代码中 BasePage改为继承System.Web.UI.Page 运行该页面为用户添加权限 其它类似)BasePage用作权限判断

为了减少项目体积 所以删除了部分图片

本项目特点

后台界面简单 大方 容易操作

代码采用codesmith生成  生成代码较为通用 可自己修改或制定适合自己的模板(如果需要带向博主所要模板)

网站前台考虑到SEO效果

后台权限针对到功能(需判断的权限在.aspx.cs继承一个类即可  考虑到企业站管理员不多 所以权限针对用户)

提供项目文件在线管理(可通过config文件配置 可修改的文件后缀名)

错误日志记录功能 可让你在线排查项目错误信息(错误日志记录在 根目录Log下)

 来几张项目后台页面

这是新闻管理

这是修改项目文件

这是普通的列表页面

后台用户名:yujiajun 密码:111111

个人认为 ,不存在说的通用的网站,通用的网站都是通过一定策略 和遵守一定约定实现的

这个项目也一样通过此实现

代码简单 完全可以进行二次开发(可免费使用 但请注明出处)

#p#

codesimth 模板是自己搜集的还比较通用 没有的方法自己写上就可以了 先来看看我生成的一个dal类

using System;  
using System.Data.SqlClient;  
using System.Collections.Generic;  
using Models;  
 
namespace Service  
{  
    /// <summary>  
    /// 本类由软件生成生成  
    /// 禁止修改  
    /// 若需要扩展,请另建一个partial class完成。  
    /// </summary>  
    public class LinksService  
    {  
          
        /// <summary>  
        /// 获取所有记录  
        /// </summary>  
        /// <returns></returns>  
        public List<Links> GetAll()  
        {  
            string sql="select * from Links";  
            return SqlHelper.GetList<Links>(sql);  
        }  
        /// <summary>  
        /// 根据主键ID查询单条记录  
        /// </summary>  
        /// <param name="id">主键id</typeparam>  
        /// <param name="reader"></param>  
        /// <returns></returns>  
        public Links GetById(int id)  
        {  
            string sql="select * from Links where ID=@id";  
            SqlParameter spm=new SqlParameter("@id",id);  
            return SqlHelper.GetSingle<Links>(sql,spm);  
        }  
        /// <summary>  
        /// 按照分页条件查询记录集  
        /// </summary>  
        /// <param name="startIndex">起始行号,从0开始</typeparam>  
        /// <param name="count">需要查询的记录条数</param>  
        /// <param name="sortColumn">排序列名,若要降序请用列名+" DESC",传入空默认按照主键降序排列</param>  
        /// <param name="links">查询条件,若无此条件请保持该属性默认值</typeparam>  
        /// <returns></returns>  
        public List<Links> GetByPage(int startIndex,int count,string sortColumn,Links links)  
        {  
            if(string.IsNullOrEmpty(sortColumn))  
                sortColumn="ID DESC";  
            string sql="exec proc_GetByPage @startIndex,@count,@order,@tableName,@pkName,@where";  
            SqlParameter[] spms=new SqlParameter[]  
            {  
                new SqlParameter("@startIndex",startIndex),  
                new SqlParameter("@count",count),  
                new SqlParameter("@order",sortColumn),  
                new SqlParameter("@tableName","Links"),  
                new SqlParameter("@pkName","ID"),  
                new SqlParameter("@where",GetConditions(links))  
            };  
            return SqlHelper.GetList<Links>(sql,spms);  
        }  
        /// <summary>  
        /// 获取记录条数  
        /// </summary>  
        /// <param name="links">查询条件,若无此条件请保持该属性默认值</typeparam>  
        /// <returns></returns>  
        public int GetCount(Links links)  
        {  
            string sql="select count(*) from Links where 1=1"+GetConditions(links);  
            return SqlHelper.GetCount(sql);  
        }  
        /// <summary>  
        /// 生成查询条件的sql语句  
        /// </summary>  
        /// <param name="links">查询条件,若无此条件请保持该属性默认值</typeparam>  
        /// <returns>sql语句中where后面的部门,以" and"开始,sql语句中最后部分应是" where 1=1"</returns>  
        private string GetConditions(Links links)  
        {  
            string condition="";  
            if(links!=null)  
            {  
            if(links.ID!=(default(int)))  
            {  
                condition+=" and ID = '"+links.ID+"'";  
            }  
            if(!string.IsNullOrEmpty(links.LName))  
            {  
                condition+=" and LName like '%"+SqlHelper.GetParameterValue(links.LName)+"%'";  
            }  
            if(!string.IsNullOrEmpty(links.LPath))  
            {  
                condition+=" and LPath like '%"+SqlHelper.GetParameterValue(links.LPath)+"%'";  
            }  
            }  
              
            return condition;  
        }  
        /// <summary>  
        /// 更新数据  
        /// </summary>  
        /// <param name="links">需要更新的数据实体</param>  
        /// <returns></returns>  
        //public int Update(Links links)  
      //  {  
       //     string sql="update Links set LName=@lName,LPath=@lPath where ID=@id";  
        //    SqlParameter[] spms=new SqlParameter[]  
        //    {  
         //       new SqlParameter("@id",links.ID),new SqlParameter("@lName",links.LName??(object)DBNull.Value),new SqlParameter("@lPath",links.LPath??(object)DBNull.Value)  
         //   };  
         //   return SqlHelper.ExecuteNonQuery(sql,spms);  
        //}  
       /// <summary>  
        /// 更新数据,只传入需要更新的字段,可批量更新  
        /// </summary>  
        /// <param name="ids">需要更新的数据主键</param>  
        /// <returns></returns>  
        public int Update(Links links)  
        {  
            List<SqlParameter> spms=new List<SqlParameter>();  
            string sql="update Links set ";  
            if(links!=null)  
            {  
            if(!string.IsNullOrEmpty(links.LName))  
            {  
                sql+="LName=@lName,";  
                spms.Add(new SqlParameter("@lName",links.LName));  
            }  
                   
            if(!string.IsNullOrEmpty(links.LPath))  
            {  
                sql+="LPath=@lPath,";  
                spms.Add(new SqlParameter("@lPath",links.LPath));  
            }  
            }  
            sql=sql.Substring(0,sql.Length-1);  
            sql+=" where ID =@id";  
            spms.Add(new SqlParameter("@id",links.ID));  
            return SqlHelper.ExecuteNonQuery(sql,spms.ToArray());  
        }  
        /// <summary>  
        /// 删除数据  
        /// </summary>  
        /// <param name="id">需要删除的数据主键id列表,可传单个ID,也可传数组</param>  
        /// <returns></returns>  
        public int Delete(params int[] ids)  
        {  
            if(ids.Length==0)return 0;  
            List<SqlParameter> spms=new List<SqlParameter>();  
            string sql="delete from Links where ID in (";  
            for(int i=0;i<ids.Length;i++)  
            {  
                sql+="@id"+i+",";  
                spms.Add(new SqlParameter("@id"+i,ids[i]));  
            }  
            sql=sql.Substring(0,sql.Length-1);  
            sql+=")";  
            return SqlHelper.ExecuteNonQuery(sql,spms.ToArray());  
        }  
        /// <summary>  
        /// 插入数据,自增列的值对应更新在实体类参数对象中  
        /// </summary>  
        /// <param name="links">需要插入的数据实体</param>  
        /// <returns>影响行数</returns>  
        public int Insert(Links links)  
        {  
            string sql="insert into Links(LName,LPath) values ("+(links.LName==null?"null":"@lName")+","+(links.LPath==null?"null":"@lPath")+");Select @@IDENTITY";  
            SqlParameter[] spms=new SqlParameter[]  
            {  
                new SqlParameter("@lName",links.LName??(object)DBNull.Value),new SqlParameter("@lPath",links.LPath??(object)DBNull.Value)  
            };  
            return int.Parse(SqlHelper.ExecuteScalar(sql,spms).ToString());  
        }  
    }  

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.
  • 89.
  • 90.
  • 91.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
  • 98.
  • 99.
  • 100.
  • 101.
  • 102.
  • 103.
  • 104.
  • 105.
  • 106.
  • 107.
  • 108.
  • 109.
  • 110.
  • 111.
  • 112.
  • 113.
  • 114.
  • 115.
  • 116.
  • 117.
  • 118.
  • 119.
  • 120.
  • 121.
  • 122.
  • 123.
  • 124.
  • 125.
  • 126.
  • 127.
  • 128.
  • 129.
  • 130.
  • 131.
  • 132.
  • 133.
  • 134.
  • 135.
  • 136.
  • 137.
  • 138.
  • 139.
  • 140.
  • 141.
  • 142.
  • 143.
  • 144.
  • 145.
  • 146.
  • 147.
  • 148.
  • 149.
  • 150.
  • 151.
  • 152.
  • 153.
  • 154.
  • 155.
  • 156.
  • 157.
  • 158.
  • 159.
  • 160.
  • 161.
  • 162.
  • 163.
  • 164.
  • 165.
  • 166.
  • 167.
  • 168.
  • 169.
  • 170.
  • 171.
  • 172.
  • 173.

该类少许代码经过自己修改

后台模板经测试  大多浏览器都兼容   由于不善于表达有些功能未表现出来  项目适合新手  

希望各位 提出宝贵意见或建议  以便于帮助该项目长期更新

下载地址:http://files.cnblogs.com/yujiajun/yujiajun.zip

原文链接:http://www.cnblogs.com/yujiajun/archive/2012/07/18/yujiajun.html

【编辑推荐】

  1. ASP.NET MVC涉及到的5个同步与异步
  2. YQBlog .NET MVC3博客系统之用户系统实战
  3. ASP.NET Cache的一些总结
  4. ASP.NET中常用的几种身份验证方式
  5. ASP.NET中使用App_Code文件夹的异常
责任编辑:张伟 来源: 喻家军的博客
相关推荐

2021-06-26 16:24:21

Linux命令系统

2021-08-04 11:55:45

Python天气查询PySide2

2022-03-17 15:34:47

printf日志

2019-06-05 15:00:28

Java代码区块链

2018-07-02 12:49:33

刷新控件动画

2021-06-10 13:50:55

代码开发数据库

2021-11-26 08:33:51

React组件前端

2022-04-08 08:48:16

线上事故日志订阅者

2018-02-06 10:04:59

2017-06-27 09:26:53

运维app开发

2017-09-11 18:24:39

企业应用自述

2010-04-19 17:21:36

Oracle写文件

2023-04-07 15:45:13

Emojicode开源编码语言

2014-02-14 09:37:01

JavascriptDOM

2024-12-06 09:58:09

2015-07-03 11:27:30

程序员自己神器

2025-02-26 08:03:17

SpringJPAMyBatis

2019-08-01 12:59:21

Bug代码程序

2017-02-06 10:30:13

iOS表单正确姿势

2017-06-08 15:53:38

PythonWeb框架
点赞
收藏

51CTO技术栈公众号