C#DataAccess更新,插入,删除

时间:2011-12-12 11:22:34

标签: c# asp.net sql

我是一名新生程序员,目前正在研究ASP.NET C#中的Insert,Update和Delete函数。现在我得到了一位朋友的一点支持,他的友好足以为我写一个DataAccess(我想这是一个BLL),然后才离开工作岗位。

我习惯使用数据集和网格视图,这些都非常简单,所以这种处理数据的方式对我来说非常困难。

现在,我在DataAccess中有很多代码,但我想这是我必须关注的代码:

/// <summary>
/// Used for Create/Update/Delete etc.
/// </summary>
public void Execute(string query)
{
    SqlCommand comm = GetSqlCommand(query);

    _conn.Open();
    comm.ExecuteNonQuery();
    _conn.Close();
}

我想知道:

  1. 如何使用DataAccess文件中的插入,更新和删除
  2. 我应该把什么放入我的.aspx页面?
  3. 我希望我的问题不是太“大”的一个区域来解释,如果你知道我的意思:) 任何帮助都不仅仅是值得赞赏的人!

    此致 麦克

4 个答案:

答案 0 :(得分:0)

要使用您的Execute函数,您必须编写应该执行的sql语句。您的数据访问层似乎就是这样工作的。但这不是我对DAL(数据访问层)的期望,它应该完全封装数据访问,因此BLL(业务逻辑层)必须不知道数据库是如何工作的。

答案 1 :(得分:0)

您可以在DataAccess.cs文件中创建方法insertupdatedetele。然后,您可以在.aspx文件中使用这些方法。

请查看有关Creating a Data Access Layer in ASP.Net applications for inserting,selecting,deleting and updating dataCreating a Data Access Layer的这些文章,它们将为您提供有关此过程的正确理解。

希望这有帮助

答案 2 :(得分:0)

aaa hi mike,让我们回顾一下n层架构:

DB&lt; - &gt; DAL&lt; - &gt; BLL&lt; - &gt; PL

您在问题中编写的示例代码是DAL图层的一部分,而不是BLL图层

关于第一个问题:

取决于您的架构。如果您有3层方法,那么在您的aspx文件中只需编写如下内容:

new DAL().Execute("INSERT INTO TABLE TABLENAME VALUES (...)");

但是如果你有4层方法,那么你只需将这个(最后提到的代码)代码放在BLL类和aspx文件中,就可以从BLL类中调用一个方法。

但我为你的朋友提供了另一个优惠,使用LinQ或Entity Framework等新技术创建你的DLL图层,然后创建一个BLL图层。

如果您需要更多帮助,请评论我编辑我的回复或发布其他答案以获取更多详细信息。

谢谢,阿里

答案 3 :(得分:0)

虽然这与你正在使用的方法不同,但我认为这可能仍然是一个可能的答案。

你可以考虑使用Linq(到SQl)。

Scott Guthrie有一系列文章可以帮助您入门。

我将链接到第8条,其中包含前面部分的链接。

http://weblogs.asp.net/scottgu/archive/2007/08/27/linq-to-sql-part-8-executing-custom-sql-expressions.aspx

你应该从第1-4部分得到你需要的东西。

基本上LINQ将使您能够对数据库进行SQLquery查询,如下所示:

MyDatabaseContext db = new MyDatabaseContext();

var res = from item in db.Table
where item.Column == 2
select item;
//or using Lambda expressions
var res2= db.Table.Where(x => x.Column == 1);

这可以让你自己扩展你的不同方法,让你开始使用Linq,这非常简洁。 :)

我希望这会有所帮助。