0
我試圖簡單地使用vb.net MVC訪問現有數據庫中的信息。問題是,當我運行代碼時,它會在數據庫中創建一個表,其名稱類似於我試圖訪問的表,並在末尾添加's'。MVC模型在數據庫中創建表而不是使用現有的
例如:
現有的表格:VXPartsData。運行的應用程序後創建
表:VXPartsDatas
我已經成功地做到這一點在C鋒利很容易,但不明白我要去哪裏錯用VB。如果有人能請點我在正確的方向,謝謝
Imports System.Data.Linq
Imports System.Data.Linq.Mapping
Imports System.ComponentModel.DataAnnotations
Imports System.Data.Entity
Namespace Models
<Table(Name:="dbo.VXPartsData")>
Public Class VXPartsData
<Key()>
Public Property PartNo As String
Public Property CustPart As String
Public Property ShortDesc As String
Public Property Part As String
Public Property Price As Decimal
Public Property DiscCode As String
Public Property Kit As Boolean
Public Property VXCODE As String
End Class
Public Class ProductContext
Inherits DbContext
Public Property VXPartsDatas As DbSet(Of VXPartsData)
End Class
End Namespace
控制器:
Imports System.Data.Entity
Imports Videx_PB2.Models
Public Class HomeController
Inherits System.Web.Mvc.Controller
Private db As New ProductContext
Function Index() As ActionResult
Return View(db.VXPartsDatas.ToList())
End Function
End Class
連接字符串:
<connectionStrings>
<add name="ProductContext" connectionString="server=(localdb)\MSSQLLocalDB; database=VidexPB; integrated security=SSPI" providerName="System.Data.sqlClient" />
</connectionStrings>
謝謝,這似乎是這種情況,我將該表更名爲測試,並且它工作。我有一個費用問題:1)爲什麼在使用c sharp和實體框架時不會發生這種情況? 2)你是否有上述功能的等效VB代碼? –
@AHoughton我不知道你的第一個問題的答案。對於問題2:modelBuilder.Conventions.Remove(Of PluralizingTableNameConvention)() – user449689
非常感謝 –