我使用Entity Framework
開發一個asp.NET
應用程序,我得到以下異常每當我試圖在我的dbo.Slider
表創建一個記錄:System.Data.SqlClient.SqlException:無效的對象名稱dbo.Slider「
System.Data.Entity.Infrastructure.DbUpdateException:
更新條目時發生錯誤。
有關詳細信息,請參閱內部例外。 --->
System.Data.Entity.Core.UpdateException:
更新條目時發生錯誤。
有關詳細信息,請參閱內部例外。 ---> System.Data.SqlClient.SqlException:
無效的對象名稱'dbo.Slider'。在...
我使用的是實體框架服務,稱爲efService
我創建並調用我的代碼隱藏表單:
protected Services.EFService efService = new Services.EFService();
我嘗試創建一個按鈕點擊滑塊和這裏有一個代碼,我用的是一節它的鍵斷裂之前:
slider.DateCreated = DateTime.Now;
slider.Caption = txbPhotoCaptionCreate.Text;
slider.IsPublic = cbxPhotoPublicCreate.Checked;
slider.Path = string.Empty;
slider.ThumbnailPath = string.Empty;
slider.DisplayPath = string.Empty;
int sliderId = efService.CreateSlider(slider); // It breaks here
這裏是CreateSlider efService
,我已經做:
public int CreateSlider(Models.EF.Slider slider)
{
DB.Sliders.Add(slider);
DB.SaveChanges();
return slider.Id;
}
這一切都適用於我有其他幾乎完全相同功能的表。
下面是我用它來創建我的Slider
表的SQL:
CREATE TABLE [dbo].[Slider]
(
[Id] INT IDENTITY(1,1) NOT NULL,
[Caption] VARCHAR (50) NOT NULL,
[Position] INT NOT NULL DEFAULT 1,
[IsPublic] BIT NOT NULL DEFAULT 1,
[Path] NVARCHAR (250) NULL,
[ThumbnailPath] NVARCHAR (250) NULL,
[DisplayPath] NVARCHAR (250) NULL,
[DateCreated] DATETIME NOT NULL,
PRIMARY KEY CLUSTERED ([Id] ASC)
);
有沒有生成錯誤,整個應用程序運行除非我嘗試創建一個記錄Slider
罰款。通過大量調試,我可以得出結論,發生問題時發生DB.SaveChanges()
。
確定EF是否指向與執行該SQL查詢相同的數據庫?調試該方法並檢查'DB'對象,它有一個'Database'屬性,它應該包含'ConnectionString'。 – user3185569
是的,就像它對我的其他表 –
@ user3185569,使我在正確的軌道上。我在本地創建了數據庫,但應用程序使用了雲數據庫。所以這個問題實際上是在我的Web配置中指向錯誤的數據庫。如果你願意,你可以回答。 –