除非最后有's',否则它不在数据类中

时间:2012-04-15 07:55:40

标签: vb.net linq

这是我的代码:

部分班级可用的约会     继承System.Web.UI.Page

Private Db As DataClasses2DataContext

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    Db = New DataClasses2DataContext()
End Sub

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim availableslots = From c In Db.Slots Select c.Slotid, c.StartTime, c.EndTime
    table.DataSource = availableslots
    table.DataBind()
End Sub

Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
    Dim allbookings = From c In Db.bookings Select c.Bookingid
    table.DataSource = allbookings
    table.DataBind()
End Sub



Protected Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button3.Click
    Dim leftover = From c In Db.Slots Select c.bookings
    Dim allTheCountries = From c In Db.bookings Select c
    'the except operator only select countires that aren't found in the cyclist table
    Dim whatsleft = availableslots.Except(allbookings)
    table.DataSource = whatsleft

基本上我使用三个按钮,一个gridview重命名为table。 我正在使用三个按钮来告诉我所有的约会,所有的预订和第三个按钮都会减少从插槽中预订的所有剩余预约。

这涉及的表格是; 预订 槽

使用db.slot或使用db.booking时我得到的错误是......

BC30456:'Slot'不是'DataClasses2DataContext'的成员。

但是,如果我使用db.slots或db.bookings ...

,页面将加载

然而,代码显然不会因为它正在寻找一个称为插槽或预订的表...

使用linq to sql类创建Dataclasses2datacontext,原因是它有2个因为我认为数据类图可能有问题因此我创建了一个新的并删除了旧的,但是这仍然没有解决问题。 数据类图的编码是正确的,因为它在所有其他页面上都能正常工作。

希望这个附加细节有所帮助。

感谢。

1 个答案:

答案 0 :(得分:0)

  

然而,代码显然不会因为它正在寻找一个称为插槽或预订的表...

你试过吗?

类的名称不需要与表的名称匹配。通过 default ,检索到的对象的名称 - 表格中的行项目 - 将是单数形式(SlotBooking),集合的名称将是复数形式(context.Slots)。

所以

Slot firstSlot = context.Slots.First()

如果代码'显然不起作用',请发布您收到的错误消息。