1

我认为有人可以普遍回答这个问题,但如果有人想具体说明我正在尝试使用:

使用 System.Web.Security.SingleSignOn;使用 System.Web.Security.SingleSignOn.Authorization;

我已经用谷歌搜索了我的大脑,这是我找到的最接近的答案:

“我们离线讨论了这个问题,但看起来 ADFS 程序集是 GACed,但没有安装在文件系统上或在 VS.NET 中注册,因此它显示在 .NET 选项卡中。我猜 MS 可能需要加强此方案的安装程序。与此同时,您可能需要自己执行此操作。”

到底是什么,我自己做什么?

4

4 回答 4

2

我发现一个安装日志显示它应该在

C:\WINDOWS\ADFS\System.Web.Security.SingleSignon.dll

在 Windows Server 2003 上。您可能需要安装活动目录才能让它出现在那里,因为我检查了一台没有 AD 的 2003 服务器,但它不存在。

通常我会猜测 DLL 将在系统范围的全局程序集缓存 (GAC) 中注册,因此您不必知道它的实际路径。如果程序集在 GAC 中注册,则可以通过打开“添加引用”对话框并单击“.NET”选项卡来添加对它的引用。

于 2008-09-19T16:19:57.853 回答
1

你可以在这个文件中找到指定的命名空间:system.web.security.singlesignon.claimtransforms.dll

但是这个文件通常不可用,只能安装在 GAC(全局程序集缓存)中。您可以在例如c:\window\assembly...下找到它,然后将 dll 复制到另一个路径。然后您可以在 Visual Studio 中手动引用它。

于 2008-09-19T16:17:34.270 回答
0

对于使用特定环境(如 SharePoint 对象模型)的项目,建议使用安装在 GAC 程序集中的虚拟 PC。ADFS 程序集应该只有 Win 服务器。如果您找到它们并在工作环境(桌面)中手动安装,则某些可能性(如调试)并非不可能。

于 2008-09-19T16:03:43.367 回答
0

如果您尝试将程序集添加到 Visual Studio“添加引用”对话框中的“.NET”选项卡,则需要进行注册表设置。KB30149 更详细地解释了它。简短版本:您需要向HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders注册表项添加一个条目。

If you're trying to locate a physical file corresponding to an assembly in the GAC, drop to a command prompt and go to %WINDIR%\Assembly (e.g., C:\WINDOWS\Assembly). Navigate around in there - that's where GAC'd assemblies live.

于 2008-09-19T16:38:39.213 回答