1、我已经把当前页面加入到母版页面里了,那如何指定跳转的页面呢?我是初学者,希望能把过程讲的详细些,谢谢
2、如何正确连接数据库呢?我的源码是从网上下载的,数据库在SQL2008里成功附加了,接下来如何成功连接数据库呢?
3、针对二楼的回答我想问,如何看母版页是不是启动页面呢?我不太明白要怎样查看,麻烦您能把具体的步骤讲下。

解决方案 »

  1.   

    此外,依据这个系统的制作,我需要安装IIS吗?我也不太清楚这是不是属于网页制作。如果需要安装IIS的话我是win764位系统,要怎么操作呢?在网上查过相应资料,但发现一些网上的文件在我电脑里没有,也就没有安装成功。哎,现在是一片迷茫!
      

  2.   

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Configuration;
    using System.Data;
    using System.Data.SqlClient;/* 
     * 所属层次:数据访问类组件
     */
    namespace MyOffice.DAL
    {
        /// <summary>
        /// SqlHelper类是专门提供给用于高性能、可升级的sql数据操作
        /// </summary>
        public static class DBHelper
        {
            //数据库连接字符串。
            //连接字符串在界面层的webConfig的配置文件中。[设计为public是为了创建带事务的连接,因为连接将在DAL相关类中创建]
            public static readonly string ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;        #region 执行SQL语句或存储过程,返回影响的行数
            /// <summary>
            /// 执行SQL语句或存储过程,返回影响的行数
            /// </summary>
            /// <param name="commandType">命令类型(存储过程, 文本, 表或视图)</param>
            /// <param name="commandText">存储过程名称或者sql命令语句</param>
            /// <param name="commandParameters">执行命令所用参数的集合</param>
            /// <returns>执行命令所影响的行数</returns>
            public static int ExecuteNonQuery(CommandType commandType, string commandText, params SqlParameter[] commandParameters)
            {
                SqlCommand command = new SqlCommand();
                using (SqlConnection connection = new SqlConnection(ConnectionString))
                {
                    //为什么要调用准备执行命令这个方法:因为在此处可以加入一个事务控制。
                    PrepareCommand(command, connection, null, commandType, commandText, commandParameters);
                    int val = command.ExecuteNonQuery();
                    command.Parameters.Clear();
                    return val;
                }
            }
            #endregion        #region 使用现有的SQL事务执行一个sql命令
            /// <summary>
            ///使用现有的SQL事务执行一个sql命令
            /// </summary>
            /// <param name="transaction">一个现有的事务</param>
            /// <param name="commandType">命令类型(存储过程, 文本, 等等)</param>
            /// <param name="commandText">存储过程名称或者sql命令语句</param>
            /// <param name="commandParameters">执行命令所用参数的集合</param>
            /// <returns>执行命令所影响的行数</returns>
            public static int ExecuteNonQuery(SqlTransaction transaction, CommandType commandType, string commandText, params SqlParameter[] commandParameters)
            {
                //这里不能关闭连接,因为事务还没有完成,此连接将一直为本次事务提供服务。
                //连接将在相关的DAL数据模块中创建,然后传入本方法,所以本类的连接字符串要为Public
                SqlCommand command = new SqlCommand();
                PrepareCommand(command, transaction.Connection, transaction, commandType, commandText, commandParameters);
                int val = command.ExecuteNonQuery();
                command.Parameters.Clear();
                return val;
            }
            #endregion        #region 执行一个返回读取器的sql命令
            /// <summary>
            /// 用执行的数据库连接执行一个返回读取器的sql命令
            /// </summary>
            /// <param name="commandType">命令类型(存储过程, 文本, 等等)</param>
            /// <param name="commandText">存储过程名称或者sql命令语句</param>
            /// <param name="commandParameters">执行命令所用参数的集合</param>
            /// <returns>包含结果的读取器</returns>
            public static SqlDataReader ExecuteGetReader(CommandType commandType, string commandText, params SqlParameter[] commandParameters)
            {
                //创建一个SqlCommand对象
                SqlCommand command = new SqlCommand();
                //创建一个SqlConnection对象
                SqlConnection connection = new SqlConnection(ConnectionString);            //在这里我们用一个try/catch结构执行sql文本命令/存储过程,因为如果这个方法产生一个异常我们要关闭连接,因为没有读取器存在,
                //因此commandBehaviour.CloseConnection 就不会执行
                try
                {
                    //调用 PrepareCommand 方法,对 SqlCommand 对象设置参数
                    PrepareCommand(command, connection, null, commandType, commandText, commandParameters);
                    
                    //调用 SqlCommand  的 ExecuteReader 方法
                    SqlDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection);
                    //清除参数
                    command.Parameters.Clear();
                    return reader;  //注意不能关闭连接,否则调用方无法读取数据。
                }
                catch
                {
                    //关闭连接,抛出异常
                    connection.Close();
                    throw;  //抛出什么?
                }
            }
            #endregion        #region 执行命令,返回DataTable
            /// <summary>
            /// 执行命令,返回DataTable
            /// </summary>
            /// <param name="commandText">命令内容</param>
            /// <param name="commandType">命令类型</param>
            /// <param name="commandParameters">参数</param>
            /// <returns>DataTable数据表</returns>
            public static DataTable ExecuteGetDataTable(CommandType commandType, string commandText, params SqlParameter[] commandParameters)
            {
                SqlCommand command = new SqlCommand();
                DataTable table = new DataTable();
                using (SqlConnection connection = new SqlConnection(ConnectionString))
                {
                    PrepareCommand(command, connection, null, commandType, commandText, commandParameters);
                    SqlDataAdapter adapter = new SqlDataAdapter(command);
                    adapter.Fill(table);
                    return table;
                }
            }
            #endregion        #region 执行一个命令并返回第一列
            /// <summary>
            /// 用指定的数据库连接字符串执行一个命令并返回一个数据集的第一列
            /// </summary>
            ///<param name="ConnectionString">一个有效的连接字符串</param>
            /// <param name="commandType">命令类型(存储过程, 文本, 等等)</param>
            /// <param name="commandText">存储过程名称或者sql命令语句</param>
            /// <param name="commandParameters">执行命令所用参数的集合</param>
            /// <returns>用 Convert.To{Type}把类型转换为想要的 </returns>
            public static object ExecuteScalar(CommandType commandType, string commandText, params SqlParameter[] commandParameters)
            {
                SqlCommand command = new SqlCommand();            using (SqlConnection connection = new SqlConnection(ConnectionString))
                {
                    PrepareCommand(command, connection, null, commandType, commandText, commandParameters);
                    object val = command.ExecuteScalar();
                    command.Parameters.Clear();
                    return val;
                }
            }
            #endregion        #region 准备执行一个命令
            /// <summary>
            /// 准备执行一个命令
            /// </summary>
            /// <param name="cmd">sql命令</param>
            /// <param name="conn">Sql连接</param>
            /// <param name="trans">Sql事务</param>
            /// <param name="cmdType">命令类型例如 存储过程或者文本</param>
            /// <param name="cmdText">命令文本</param>
            /// <param name="cmdParms">执行命令的参数</param>
            private static void PrepareCommand(SqlCommand command, SqlConnection connection, SqlTransaction transaction, 
                CommandType commandType, string commandText, SqlParameter[] commandParameters)
            {
                if (connection.State != ConnectionState.Open)
                    connection.Open();            command.Connection = connection;
                command.CommandText = commandText;            if (transaction != null)
                    command.Transaction = transaction;            command.CommandType = commandType;            if (commandParameters != null)
                    command.Parameters.AddRange(commandParameters);
            }
            #endregion    }
    }
      

  3.   

     用这个 楼主我觉得你连最基本的ADO.NET都没搞清楚,连接池什么时候打开 什么时候关闭 得明白;
      

  4.   

    这是数据库连接层web.config文件代码:拜托你们看看,救我于水深火热之中吧!
    <?xml version="1.0"?>
    <configuration>
    <configSections>
    <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    <sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>
    <section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    <section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    <section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/></sectionGroup></sectionGroup></sectionGroup></configSections><connectionStrings>
    <add name="ConnectionString" connectionString="Data Source=FANG-PC\SQLEXPRESS;AttachDbFilename=E:\项目\未分类\MyOffice12-25\DataBase\MyOffice.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True" providerName="System.Data.SqlClient"/>
    </connectionStrings>
      <appSettings>
        <add key="DBHelperProvider" value="System.Data.SqlClient"/>
        <add key="BbHelperConnectionString" value="Data Source=FANG-PC\SQLEXPRESSS;Initial Catalog=MYOFFICE.MDF;Persist Security Info=True;"/>
      </appSettings>
    <system.web>
    <pages validateRequest="false">
    <controls>
    <add tagPrefix="ajax" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit"/>
    <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></controls>
    </pages>
    <!--
              Set compilation debug="true" to insert debugging
              symbols into the compiled page. Because this
              affects performance, set this value to true only
              "Data Source=.\SQLEXPRESS;AttachDbFilename=D:\余佳MyOffice12-25\DataBase\MyOffice.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"
              during development."Data Source=.;Initial Catalog=MYOFFICE.MDF;Integrated Security=True"
               <add verb="*" path="images/Users/*.jpg" type="CoverHandler"/>
        -->
    <compilation debug="true">
    <assemblies>
    <!--<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>-->
    <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/></assemblies>
    </compilation>
    <httpHandlers>
    <add verb="*" path="images/Users/*.jpg" type="CoverHandler"/>
    <remove verb="*" path="*.asmx"/>
    <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add verb="GET,HEAD" path="ScriptResource.axd" validate="false" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></httpHandlers>
    <customErrors mode="Off" defaultRedirect="~/Error/ErrorPage.htm">
    <error statusCode="403" redirect="~/Error/NoAccess.htm"/>
    <error statusCode="404" redirect="~/Error/FileNotFound.htm"/>
    </customErrors>
    <httpModules>
    <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></httpModules></system.web>
    <system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules>
    <remove name="ScriptModule"/>
    <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></modules>
    <handlers>
    <remove name="WebServiceHandlerFactory-Integrated"/>
    <remove name="ScriptHandlerFactory"/>
    <remove name="ScriptHandlerFactoryAppServices"/>
    <remove name="ScriptResource"/>
    <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add name="ScriptResource" verb="GET,HEAD" path="ScriptResource.axd" preCondition="integratedMode" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></handlers></system.webServer>
    <system.codedom>
    <compilers>
    <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider,System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
    <providerOption name="CompilerVersion" value="v3.5"/>
    <providerOption name="WarnAsError" value="false"/></compiler>
    <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
    <providerOption name="CompilerVersion" value="v3.5"/>
    <providerOption name="OptionInfer" value="true"/>
    <providerOption name="WarnAsError" value="false"/></compiler></compilers></system.codedom>
    <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
    <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>
    <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/></dependentAssembly>
    <dependentAssembly>
    <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>
    <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/></dependentAssembly></assemblyBinding></runtime></configuration>
      

  5.   

     数据库连接字符:
    ⑴:身份验证
    Data Source=.;Initial Catalog=数据库名称;Persist Security Info=True;User ID=数据库用户名;Password=密码;Pooling=True; min pool size=1;max pool size=50;
    ⑵:windows验证
    Data Source=.;Initial Catalog=testDB;Integrated Security=True;