- 浏览: 40337 次
- 性别:
文章分类
最新评论
public event PropertyChangedEventHandler PropertyChanged;
private string _CustomerID;
public string CustomerID
{
get { return _CustomerID; } set { _CustomerID = value; }
}
private string _CompanyName;
public string CompanyName
{
get { return _CompanyName; }
set
{
if (!value.Equals(_CompanyName))
{
_CompanyName = value;
if (PropertyChanged != null)
{
PropertyChanged(this,
new PropertyChangedEventArgs("CompanyName"));
}
}
}
}
List<Order> orderList = GetMyListOfOrders(); int orderID = orderList[0].OrderID;
public static List<Order> GetEntityList()
{
List<Order> OrderList = new List<Order>();
using (SqlConnection cn = new SqlConnection(Common.ConnectionString))
{
string proc = "pr_Order_GetList";
using (SqlCommand cmd = new SqlCommand(proc, cn))
{
cmd.CommandType = CommandType.StoredProcedure;
cn.Open();
SqlDataReader rdr = cmd.ExecuteReader(
CommandBehavior.CloseConnection);
while (rdr.Read())
{
Order order = FillOrder(rdr);
OrderList.Add(order);
}
if (!rdr.IsClosed) rdr.Close();
}
}
return OrderList;
}
ArrayList orderList = GetMyListOfOrders(); int orderID = ((Order)orderList[0])).OrderID;
Order order = new Order(); order.OrderID = Convert.ToInt32(rdr["OrderID"]); order.CustomerID = rdr["CustomerID"].ToString(); order.EmployeeID = Convert.ToInt32(rdr["EmployeeID"]); order.OrderDate = Convert.ToDateTime(rdr["OrderDate"]); order.ShipVia = rdr["ShipVia"].ToString(); order.ShipName = rdr["ShipName"].ToString(); order.ShipAddress = rdr["ShipAddress"].ToString(); order.ShipCity = rdr["ShipCity"].ToString(); order.ShipCountry = rdr["ShipCountry"].ToString(); return order;
private static Order AddEntity(Order order)
{
int orderID = 0;
using (SqlConnection cn = new SqlConnection(Common.ConnectionString))
{
string proc = "pr_Order_Add";
using (SqlCommand cmd = new SqlCommand(proc, cn))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@customerID", order.CustomerID);
cmd.Parameters.AddWithValue("@employeeID", order.EmployeeID);
cmd.Parameters.AddWithValue("@orderDate", order.OrderDate);
cmd.Parameters.AddWithValue("@shipVia", order.ShipVia);
cmd.Parameters.AddWithValue("@shipName",
GetValue(order.ShipName));
cmd.Parameters.AddWithValue("@shipAddress",
GetValue(order.ShipAddress));
cmd.Parameters.AddWithValue("@shipCity",
GetValue(order.ShipCity));
cmd.Parameters.AddWithValue("@shipCountry",
GetValue(order.ShipCountry));
cmd.Parameters.Add(new SqlParameter("@orderID",
SqlDbType.Int));
cmd.Parameters["@orderID"].Direction =
ParameterDirection.Output;
cn.Open();
cmd.ExecuteNonQuery();
orderID = Convert.ToInt32(cmd.Parameters["@orderID"].Value);
}
order = GetEntity(orderID);
}
return order;
}
private void SetupBindings()
{
BindingList<Order> orderList =
new BindingList<Order>(Order.GetEntityList());
orderBindingSource.DataSource = orderList;
BindingList<Customer> customerList =
new BindingList<Customer>(Customer.GetEntityList());
customerBindingSource.DataSource = customerList;
BindingList<Employee> empList =
new BindingList<Employee>(Employee.GetEntityList());
employeeBindingSource.DataSource = empList;
}
private void Delete()
{
Order order = orderBindingSource.Current as Order;
int orderID = order.OrderID;
DialogResult dlg = MessageBox.Show(
string.Format("是否确实要删除订单 {0}?",
orderID.ToString()));
if (dlg == System.Windows.Forms.DialogResult.OK)
{
Order.DeleteEntity(order);
orderBindingSource.RemoveCurrent();
MessageBox.Show(string.Format(
"订单 {0} 已删除。", orderID.ToString()));
}
}
private class OrderFilter
{
private int orderID = 0;
public OrderFilter(int orderID)
{
this.orderID = orderID;
}
public bool MatchesOrderID(Order order)
{
return order.OrderID == orderID;
}
public bool BeginsWithOrderID(Order order)
{
return order.OrderID.ToString().StartsWith(orderID.ToString());
}
}
private void toolBtnFindOrderNumber_Click(object sender, EventArgs e)
{
List<Order> orderList = new List<Order>(
orderBindingSource.DataSource as BindingList<Order>);
OrderFilter orderFilter = new OrderFilter(
Convert.ToInt32(toolTxtFindOrderNumber.Text));
Predicate<Order> filterByOrderID =
new Predicate<Order>(orderFilter.BeginsWithOrderID);
Order order = orderList.Find(filterByOrderID);
if (order == null)
MessageBox.Show("未找到相符的订单",
"未找到", MessageBoxButtons.OK);
else
{
int index = orderBindingSource.IndexOf(order);
orderBindingSource.Position = index;
}
}
发表评论
-
C# Tab
2012-06-06 00:25 672<!DOCTYPE html PUBLIC " ... -
UpdatePanel的用法详解
2012-06-06 00:04 820UpdatePanel的用法详解 今天用Upd ... -
synchronized作用域
2012-05-24 02:09 791synchronized作用域 ... -
3Tier architecture of .net
2012-05-24 01:13 818Introduction Copied from: htt ... -
VS2008中新建网站(ASP.NET 网站)跟新建项目(ASP.NET Web 应用程序)的区别!
2012-05-22 15:23 1301VS2008中新建网站(ASP.NET 网站)跟新建项目(AS ... -
转)Using the ASP.Net Runtime for extending desktop applications with dynamic HTML
2012-05-22 14:36 3048Code for this article: ... -
Asp.Net 使用 GDI+ 绘制3D饼图入门篇源码
2012-05-22 14:31 765topn3dpie.aspx --------------- ...
相关推荐
总的来说,ADO.NET的数据源和数据绑定控件是构建数据驱动的ASP.NET应用程序的关键组成部分。理解并熟练掌握SqlDataSource和ObjectDataSource的使用,以及如何与数据绑定控件配合,对于任何.NET开发者来说都至关重要...
ADO.NET是Microsoft开发的一个用于访问数据库的技术,它允许应用程序通过多种数据库连接方式来访问数据。在WPF中,通过将ListBox与ADO.NET结合使用,可以实现高效、灵活的数据展示。 #### 步骤一:建立数据库连接 ...
第8章 提供程序:ado.net和数据提供程序 8.1 如何选择 8.2 保留ole db:ole db概念总结 8.3 保留ole db:与oledb数据提供程序交互 8.3.1 主要的共型和类型映射 8.3.2 访问程序 8.3.3 执行命令、返回...
ADO.NET 是微软.NET框架中用于访问和管理数据的核心组件,它提供了一种高效、灵活的方式来与各种数据源交互,包括关系数据库、XML文件、Web服务等。此中文手册是学习ADO.NET的重要参考资料,涵盖了从基础概念到高级...
ASP.NET和ADO.NET是Microsoft开发的两种核心技术,用于构建高效、动态的Web应用程序。ASP.NET是.NET Framework的一部分,主要用于创建服务器端的Web应用程序,而ADO.NET则是.NET Framework的数据访问组件,用于连接...
8. 面向对象的编程:ADO.NET允许开发者创建自定义数据访问层(DAL)和业务逻辑层(BLL),提高代码可维护性和重用性。 9. 数据缓存:在ASP.NET环境中,可以利用缓存机制提高性能,将频繁访问的数据存储在内存中。 ...
ADO.NET引入了断开式数据访问的概念,通过DataSet、DataTable、DataRow等对象存储和管理数据,同时利用Connection、Command和DataReader等对象连接和操作数据源。这种方式提高了数据处理的效率和灵活性,允许在不...
全书论述了ASP.NET开发概述、C#及ADO.NET背景知识、ASP.NET Web窗体的基本控件、数据控件和数据绑定技术、用户控件和自定义控件、ASP.NET内置对象和缓存技术、ASP.NET应用程序配置及编译和部署、ASP.NET与Web服务、...
1. **数据源**:首先,你需要理解什么是数据源,如SQL Server数据库、XML文件、ADO.NET Dataset或自定义业务对象。书中会详细介绍如何创建和配置这些数据源,并将它们与Windows Forms控件关联。 2. **数据绑定模型*...
- ADO.NET是Microsoft开发的数据访问技术,用于在.NET Framework应用程序中访问关系型数据库和其他数据源。 - 组成部分包括`SqlConnection`、`SqlCommand`、`SqlDataAdapter`、`DataSet`等对象。 7. **熟悉ADO...
理解并熟练运用ADO.NET和ASP.NET 2.0内置对象,以及掌握数据绑定的概念,能够提升开发效率,解决实际问题,从而在面试中表现出色。通过深入学习和实践这些内容,你将能够更好地应对C#相关的项目挑战。
ASP.NET和ADO.NET是Microsoft .NET Framework中的两个关键组件,用于构建动态Web应用程序和数据库交互。这个项目开发实例很可能是为了展示如何结合这两者来创建一个功能完善的Web新闻系统。 首先,我们来看ASP.NET...
**正文** ...综上所述,ADO.NET连接多个实例的能力使得开发者能够在同一应用中处理多种数据源,创建离线应用,定制数据绑定,以及构建丰富的用户界面,展示了其在数据驱动应用开发中的灵活性和强大功能。
ADO.NET可以轻松地与Windows Forms和ASP.NET控件进行数据绑定,实现界面与数据的动态交互。 9. **异步操作** 针对大数据操作,了解如何使用异步API(如BeginExecuteNonQuery和EndExecuteNonQuery)来提高应用程序...
本演练主要探讨如何将数据绑定到自定义的业务对象,这在构建复杂的Web应用程序时尤为重要。通过自定义业务对象,我们可以更好地封装和管理数据,提供更强大的功能和灵活性。 首先,让我们理解什么是自定义业务对象...
1. **事务处理**: 学习如何在ADO.NET中使用Transaction对象进行本地和分布式事务控制,保证数据的一致性和完整性。 2. **并发控制**: 理解并发问题,如脏读、不可重复读和幻读,以及ADO.NET提供的行版本控制和乐观...
在ADO.NET框架中,`DataView`是一种强大的工具,用于提供对`DataTable`数据的自定义视图,包括过滤、排序和搜索等功能。这对于在不改变原始数据的情况下对数据显示进行灵活调整非常有用。本文将详细介绍`DataView`的...
ADO.NET的主要目标是帮助开发者构建高效能、可伸缩的应用程序,能够处理大量数据并确保数据的完整性。 在ADO.NET中,主要包含以下几个核心组件: 1. **DataSet**:一个内存中的数据集,可以存储从多个数据源检索的...
数据绑定分为三层结构:数据库通过ADO.NET提供数据,数据源控件作为中间层处理数据的增删改查,而数据绑定控件则负责在网页上展示和交互数据。 在ASP.NET中,常见的数据绑定控件包括GridView、DetailsView、...
全书论述了ASP.NET开发概述、C#及ADO.NET背景知识、ASP.NET Web窗体的基本控件、数据控件和数据绑定技术、用户控件和自定义控件、ASP.NET内置对象和缓存技术、ASP.NET应用程序配置及编译和部署、ASP.NET与Web服务、...