C #windows app的typed-dataset初始化程序问题

时间:2010-04-07 23:12:39

标签: c# strongly-typed-dataset

问候,

我正在使用C#在Windows应用程序中工作。

我有一个名为packetsDBDataSet的typed-dataset,它有一个名为packetsTableAdapter的表适配器,其方法是插入名为InsertPackets()的数据。

当我想插入新数据时,我使用了之前用过的asp.net页面的代码,它工作正常,但不是我收到错误。

这是代码:

public packetsDBDataSetTableAdapters.packetsTableAdapter ds = new packetsDBDataSetTableAdapters.packetsTableAdapter();

public packetsDBDataSet.packetsDataTable insert = ds.InsertPackets(); 

这是错误:

错误1字段初始值设定项无法引用非静态字段,方法或属性'Packets.Form1.ds'C:\ Users \ Ali \ Documents \ Visual Studio 2008 \ Projects \ Packets-3 \ Packets \ Packets \ Form1.cs 26 59包

我已经加入了我的项目: 使用数据包; 使用Packets.packetsDBDataSetTableAdapters;

请建议解决这个问题。

更新:

我也尝试过:

public packetsDBDataSetTableAdapters.packetsTableAdapter ds = new packetsDBDataSetTableAdapters.packetsTableAdapter();

ds.InsertPackets( “1”, “2”, “3”);

我收到了这个错误:

错误1无效的标记'('在类,结构或接口成员声明中C:\ Users \ Ali \ Documents \ Visual Studio 2008 \ Projects \ Packets-3 \ Packets \ Packets \ Form1.cs 28 29包

1 个答案:

答案 0 :(得分:1)

这些行称为字段初始值设定项;他们声明一个字段并将其初始化为某个值。

正如错误所说,字段初始值设定项不能引用类的实例成员(因为它们是在完全构造类之前执行的。)

因为它引用了ds实例成员,所以需要将insert = ds.InsertPackets();移动到构造函数。