求助:Linq to SQL设计器创建的类的属性缺少Add()方法

lichence 2010-04-05 04:09:20
我用Linq to SQL设计器创建的类的属性缺少Add()方法,请高手帮忙看看代码,红色是错误的地方,是按书上打的。


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.Linq;
using System.Data.Linq.Mapping;

namespace Modifying_Data_Using_Linq_To_SQL
{
//主程序
public class Tester
{
static void Main()
{
AddCustomer();
UpdateCustomer();
Console.ReadKey();
}

private static void AddCustomer()
{
Console.WriteLine("Adding a new customer...");
MyNewItemDataContext dc = new MyNewItemDataContext();

//加入带有地址的新客户
Customer douglas = new Customer();
douglas.FirstName = "Douglas";
douglas.LastName = "Adams";
douglas.EmailAddress = "douglas0@adventureworks.com";
douglas.PasswordHash = "fake";
douglas.PasswordSalt = "fake";
douglas.ModifiedDate = DateTime.Today;
douglas.rowguid = Guid.NewGuid();

Address addr = new Address();
addr.AddressLine1 = "1c sharp Way";
addr.City = "Seattle";
addr.PostalCode = "98011";
addr.StateProvince = "Washington";
addr.CountryRegion = "United States";
addr.ModifiedDate = DateTime.Today;
addr.rowguid = Guid.NewGuid();

CustomerAddress ca = new CustomerAddress();
ca.AddressType = "Main Office";
ca.Address = addr;
ca.Customer = douglas;
ca.ModifiedDate = DateTime.Today;
ca.rowguid = Guid.NewGuid();

dc.Customers.Add(douglas);
dc.SubmitChanges();

ShowCustomersByFirstName("Douglas");
}

//更新客户记录
private static void UpdateCustomer()
{
Console.WriteLine("Updating a customer...");
MyNewItemDataContext dc = new MyNewItemDataContext();
Customer dAdams = dc.Customers.Single(
c => (c.FirstName == "Douglas" && c.LastName == "Adams"));
Console.WriteLine("Before:\n{0}", dAdams);

dAdams.Title = "Mr.";

//加一个新的发货地址
Address addr = new Address();
addr.AddressLine1 = "1 Warehouse Place";
addr.City = "Los Angeles";
addr.PostalCode = "30210";
addr.StateProvince = "California";
addr.CountryRegion = "United States";
addr.ModifiedDate = DateTime.Today;
addr.rowguid = Guid.NewGuid();

CustomerAddress ca = new CustomerAddress();
ca.AddressType = "Shipping";
ca.Address = addr;
ca.Customer = dAdams;
ca.ModifiedDate = DateTime.Today;
ca.rowguid = Guid.NewGuid();

dc.SubmitChanges();

Customer dAdams1 = dc.Customers.Single(
c => (c.FirstName == "Douglas" && c.LastName == "Adams"));
Console.WriteLine("After:\n{0}", dAdams);
}

//查找带有制定名字的客户记录列表
private static void ShowCustomersByFirstName(string firstname)
{
MyNewItemDataContext dc = new MyNewItemDataContext();
var customers =
from customer in dc.Customers
where customer.FirstName == "Douglas"
orderby customer.FirstName, customer.LastName
select customer;

Console.WriteLine("Customers whose first name is {0}:", firstname);
foreach (Customer customer in customers)
Console.WriteLine(customer);
}
}

//对创建的客户类加入一个方法来格式化显示客户属性
public partial class Customer
{
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.AppendFormat("{0} {1} {2} {3}", Title, FirstName, LastName, EmailAddress);
foreach (CustomerAddress ca in CustomerAddresses)
{
sb.AppendFormat("\n\t{0}: {1}, {2}",
ca.AddressType, ca.Address.AddressLine1, ca.Address.City);
}
sb.AppendLine();
return sb.ToString();
}
}
}

错误提示:“System.Data.Linq.Table<Modifying_Data_Using_Linq_To_SQL.Customer>”不包含“Add”的定义,并且找不到可接受类型为“System.Data.Linq.Table<Modifying_Data_Using_Linq_To_SQL.Customer>”的第一个参数的扩展方法“Add”(是否缺少 using 指令或程序集引用?)
...全文
107 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
thy38 2010-07-24
  • 打赏
  • 举报
回复
Add()是要自已写的
Table<(Of <(TEntity>)>).InsertOnSubmit
KnowKjava 2010-04-05
  • 打赏
  • 举报
回复
难道是参数错误?
laohu_ma 2010-04-05
  • 打赏
  • 举报
回复


---------楼主资料---------
登录名:lichence
总技术分:0
总技术排名:399203
---------结贴情况---------
截至:2010-04-05 16:09:20
总发帖:5个
正常结贴:4个
未结贴:1
结贴率:80.00%
评语:楼主,你高的结贴率才是我们回答的动力!
--------------------------

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧