使用VB.NET找不到AddOrUpdate()方法?

Cha*_*dhi 0 c# vb.net iqueryable

我试图将C#代码转换为VB代码:

在C#代码中,它可以调用AddOrUpdate方法,但是当我在VB中编码时,它在intellisense中找不到.

c#代码:

  protected override void Seed(eManager.Web.Infrastructure.DepartmentDB context){
         context.Departments.AddOrUpdate( d => d.Name,
                  new Department() { Name = "Engineering"},
                  new Department() { Name = "Sales"}
         );
     }
Run Code Online (Sandbox Code Playgroud)

VB代码:

但是当我用VB编写方法AddOrUpdate()时,我找不到它.DepartmentDB类的声明是这样的:

 Imports System
    Imports System.Collections
    Imports System.Collections.Generic
    Imports System.Linq
    Imports System.Text
    Imports System.Threading.Tasks
    Imports System.Data.Entity
    Imports eManager.Domain

    Public Class DepartmentDB
       Inherits DbContext
       Implements IDepartmentDataSource

    Private _DBEmployees As DbSet(Of Employee)
    Private _DBDepartments As DbSet(Of Department)

    Public ReadOnly Property Departments As IQueryable(Of Department) Implements IDepartmentDataSource.Departments
        Get
            Return _DBDepartments
        End Get
    End Property


    Public ReadOnly Property Employees As IQueryable(Of Employee) Implements IDepartmentDataSource.Employees
        Get
            Return _DBEmployees
        End Get
    End Property
End Class
Run Code Online (Sandbox Code Playgroud)

pau*_*oho 7

我想你错过了

Imports System.Data.Entity.Migrations
Run Code Online (Sandbox Code Playgroud)

因为AddOrUpdate()是一个扩展方法: 用于AddOrUpdate方法的MSDN文章