`

C#连接sql server 2008的一件2事

阅读更多

once upon a time, i came upon one thing that my c# program cannot access its specified database which sql server 2008. i dont know why, at my point of view, the program works well for sql server 2000, now it doesn't work for 2008, it's mainly supposed to be the cause of the new database, maybe they have different connection ways. At the thought of this, i began to search a lot about how to connect to 2008, with a result you can imagine, all failed. my class design is like the follows:

 

public class Service : System.Web.Services.WebService

{

    private static string connectionString = "";

    [WebMethod]
    public string WebserviceCrud(string strxml)

    {

        //connectionString = "SERVER=" + databaseip + "," + databaseport + ";DATABASE=" + databasename + ";Uid=" + userid + ";pwd=" + password;
        //connectionString = "Data Source=" + databaseds + "," + databaseport + ";Initial Catalog=" + databasename + ";Persist Security Info=True;User Id=" + userid + ";Password=" + password + ";";
        connectionString = "data source=" + databaseds + ";initial catalog=" + databasename + ";user id=" + userid + ";password=" + password + ";";

        return InvokeMethod(methodname, mParam);

    }


    public string InvokeMethod(string methodname, object[] mParam)
    {
        // Create MyClass object
        Service myClassObj = new Service();
        // Get the Type information.
        Type myTypeObj = myClassObj.GetType();
        // Get Method Information.
        MethodInfo myMethodInfo = myTypeObj.GetMethod(methodname);

        return (string)myMethodInfo.Invoke(myClassObj, mParam);
    }

    public string RequestUserQuery(string parameters)
    {
        string username = xmlhandle.GetNodeContent(parameters, "/Params/UserId");

        string commandText = "SELECT STAFF_ID as StaffId, isnull(STAFF_NAME, 'null') as StaffName, isnull(JOB, 'null') as Job, DEPT_NO as DeptNo FROM WHS_STAFF WHERE LOGIN_USERNAME = '" + username +"'";
        DataSet ds = OnlineShop.Database.SqlHelper.ExecuteDataset(connectionString, CommandType.Text, commandText);

        string xml = ds.GetXml();

        xml = xml.Replace("<NewDataSet>", "<Results>");
        xml = xml.Replace("</NewDataSet>", "</Results>");
        xml = xml.Replace("<Table>", "");
        xml = xml.Replace("</Table>", "");

        return GenerateResponseXml("ResponseUserQuery", xml);
    }

}
 

as you see, the connectionString's not static at the first place, so with every call of webmethod, it creates every new object, thus every new member field connectionString, even though i've changed its value, it's just acts as if it didn't change at all, it holds the original value from its declaration.

 

why can't i find this error? i concluded it's all from mindset . as i dont think the other part may have errors. as it just has been working fine before, cause i forgot the truth i ever modifed it the day before but i didn't check it through. it's really a lesson which deserves to be tight remembered.

 

分享到:
评论

相关推荐

    人事工资管理系统(C#+SQL Server 2008)

    《人事工资管理系统(C#+SQL Server 2008)》是一个基于C#编程语言和SQL Server 2008数据库技术开发的应用程序,专用于处理企业内部的人事信息和工资计算。本系统旨在提高人力资源部门的工作效率,通过集成化的管理...

    C#通用数据库连接串实例,可连接Access、Excel以及Sql server 数据库

    本实例将深入探讨如何创建一个通用的数据库连接字符串,以便能够连接到Access、Excel以及SQL Server这三种不同类型的数据源。 1. **Access数据库连接** Access数据库是Microsoft Office套件的一部分,使用Jet或ACE...

    C# SQL server向Excel导入数据 源代码

    首先,要在C#中连接到SQL Server,我们需要使用ADO.NET库,它是.NET框架的一部分,提供了与数据库交互的API。你需要创建`SqlConnection`对象,设置正确的连接字符串,包括服务器名、数据库名、用户名和密码。然后,...

    SQLServer2000数据库与Excel数据表转换C#实现

    在C#中,我们可以使用ADO.NET(.NET Framework的一部分)来连接SQL Server数据库并执行SQL查询。例如,使用SqlConnection对象创建数据库连接,SqlCommand对象执行查询,SqlDataReader读取结果集。然后,通过使用...

    KTV管理信息系统(C#与sql server2005)

    本文将详细探讨一款基于C#编程语言和SQL Server2005数据库系统的KTV管理信息系统,分析其设计原理、功能实现以及技术应用。 首先,C#是一种面向对象的编程语言,由微软公司开发,广泛应用于Windows平台的软件开发。...

    工厂端多码合一工具,基于C#+SQL SERVER开发

    ADO.NET提供了一组接口和类,用于连接数据库、执行SQL语句、处理结果集以及管理数据库连接。开发者可以使用SqlCommand对象执行增删查改操作,SqlDataReader读取大量数据,或者使用DataSet和DataTable在内存中操作...

    C# 将SQLServer数据查询结果的DataTable转换成Excel表格,使用NPOI给Excel表格添加样式并发布邮件

    首先,`SQLServer`是微软开发的关系型数据库管理系统,常用于存储、管理和检索大量结构化数据。在C#中与SQL Server交互,通常会用到ADO.NET,这是一个.NET框架提供的数据访问组件,包括SqlConnection、SqlCommand、...

    c#购物车模块(sql2005)

    在本项目中,"c#购物车模块(sql2005)"是一个基于C#编程语言和SQL Server 2005数据库的Web应用程序,用于实现一个完整的在线购物车功能。这个系统是为ASP.NET平台设计的,允许用户浏览商品、添加商品到购物车、修改...

    c# sql 配件管理系统

    【C# SQL 配件管理系统】是一个基于C#编程语言和SQL数据库技术开发的简易管理应用程序,主要用于管理和操作配件相关的数据。系统的核心功能包括配件信息的增加、删除、查询和修改,旨在提供一个基础的数据交互平台,...

    C#+SQL手机维修管理系统

    本文将详细解析一款名为“C#+SQL手机维修管理系统”的实习项目,该系统采用ASP.NET技术框架,结合SQLServer2005数据库,旨在为手机维修行业提供全面的信息化解决方案。 首先,我们要理解C#这一编程语言的角色。C#是...

    delphi实现excel和SQLserver数据的导入导出

    SQL Server是微软公司推出的一种关系型数据库管理系统,适用于企业级的数据存储和管理。本篇文章将详细阐述如何使用Delphi来实现Excel和SQL Server之间的数据导入与导出。 首先,我们需要理解数据导入导出的基本...

    C#+SQL2000仓库管理系统

    《C#+SQL2000仓库管理系统》是一个基于C#编程语言和SQL Server 2000数据库技术的实用软件项目。这个系统旨在提供全面的仓库管理解决方案,涵盖了库存控制、出入库操作、物品跟踪等多个关键功能。通过C#的强大编程...

    Excel和SqlServer间相互导入实例

    2. **SQL Server到Excel的数据导出**: - 首先,执行SQL查询从SQL Server获取所需数据,可以是SELECT语句或者存储过程。 - 将查询结果填充到一个新的DataSet中。 - 创建一个OleDbConnection连接到Excel文件,然后...

    新增用户就发送邮件和手机短信的SqlServer触发器

    2. **在SQL Server中创建程序集**:使用`CREATE ASSEMBLY`语句在SQL Server中创建一个程序集,指向你之前编译的DLL文件。 3. **创建触发器**:最后,使用`CREATE TRIGGER`语句结合`AS EXTERNAL NAME`子句来创建...

    ASP.NET 2.0+SQL Server 2005全程指南-源代码

    ASP.NET 2.0+SQL Server 2005全程指南 目录 基础篇 第1章 ASP.NET概述及环境配置 1.1 认识ASRNET 1.1.1 .NET Framework框架 1.1.2 ASP.NET功能与特性 1.1.3 ASP.NET与ASP的区别 1.2 搭建ASP.NET开发环境 1.2.1...

    SQL Server 2005版本特性介绍

    开发人员可以使用C#、VB.NET、XQuery、XMLA、ADO.NET 2.0、SMO(SQL Server Management Objects)和AMO(Analysis Management Objects)等工具进行高效开发。 SQL Server 2005根据客户需求推出了四个版本:企业版、...

    SQLServer_传奇sql服务的源代码_

    然而,直接阅读源代码并不是一件容易的事,尤其是对于初学者来说。需要具备扎实的编程基础,如C++或C#,以及对数据库理论的深入理解。同时,还需要熟悉操作系统底层原理,如内存管理、线程同步等。因此,学习源代码...

    c#实现excel数据高效导入到sql数据库

    2. **连接 SQL Server 数据库**:使用 SqlConnection 对象建立与 SQL Server 的连接。 3. **数据转换与插入**:将读取到的数据转换成合适的数据结构(如 DataTable),并使用 SQL 命令插入到数据库中。 #### 步骤...

    from-sql-to-excel-using-sql-statments.rar_excel sql_sql server e

    这些语言有丰富的库(如Python的pandas或C#的ADO.NET)可以直接连接到SQL Server并写入Excel。 6. **安全性与权限**:确保在执行这些操作时,你具有足够的数据库访问权限,并且在导出敏感数据时遵守公司的数据保护...

    oa c# .net sql2005

    标题中的"oa c# .net sql2005"表明这是一个基于C#、.NET框架和SQL Server 2005开发的企业级办公自动化(Office Automation,简称OA)系统。这个系统涵盖了邮件发送、文件传递以及用户角色权限管理等功能。 在OA系统...

Global site tag (gtag.js) - Google Analytics