【发布时间】:2011-12-09 15:59:44
【问题描述】:
我有一个简单的 WCF 项目,它使用实体框架来访问 AdventureWorks 数据库。它实际上出自一本书Windows Communication Foundation 4: Step by Step.
问题在于 SQL Server 数据库不是本地 SQL Server Express 实例,而是位于名为 win01s305 的外部计算机上的完整 SQL Server 2008 R2 实例。我通过Generate from Database 从外部数据库创建了一个数据模型。在我将 WCF 服务发布到 IIS 之前,数据访问完全可以与内置的 ASP.NET Web 服务器(Cassini?)一起工作。然后远程 SQL 服务器计算机上的凭据/帐户不同,数据访问停止工作。
如果你遇到麻烦,本书会指定一个脚本:
USE [AdventureWorks]
GO
CREATE USER [IIS APPPOOL\DefaultAppPool] FOR LOGIN [IIS APPPOOL\DefaultAppPool]
GO
EXEC sp_addrolemember N'db_owner', [IIS APPPOOL\DefaultAppPool]
GO
GO
CREATE USER [IIS APPPOOL\ASP.NET v4.0] FOR LOGIN [IIS APPPOOL\ASP.NET v4.0]
GO
EXEC sp_addrolemember N'db_owner', [IIS APPPOOL\ASP.NET v4.0]
GO
问题是远程 SQL Server 计算机上不存在这些帐户。这台机器上没有 IIS 或 .NET Framework,只有 SQL Server。我该怎么做?
【问题讨论】:
标签: sql-server wcf entity-framework