我正在尝试将 umbraco cms 用于一些 Facebook 应用程序。我的想法是将每个 facebook 应用程序都放在 umbraco 的 aspx 页面中(这些“应用程序”非常简单,只有几张图片,可能每个都有一个投票)。但是我在 web.config 中只能有一个 facebookSettings。是否可以不在 web.config 中设置 facebook 应用程序,而是在后面的代码中设置设置?或者是否有另一种方法可以在一个 Web 应用程序(umbraco)中拥有多个 facebook 应用程序?
编辑:我正在使用 facebooksdk 5.0.2 测试版
最佳答案
您需要首先创建一个实现 IFacebookApplication 的新类。
private class RequestScopedFacebookApplication : IFacebookApplication
{
private IFacebookApplication Current
{
get
{
var url = HttpContext.Current.Request.Url;
var app = GetSettingsForUrl(url);
return app;
}
}
public string AppId
{
get { return Current.AppId; }
}
/* ....... */
}
然后在 global.asax 的 Application_Start 中,设置您的 facebook 应用程序。
public void Application_Start()
{
FacebookApplication.SetApplication(new RequestScopedFacebookApplication());
}
更新:这是一个额外的示例实现:https://gist.github.com/820881
关于facebook-c#-sdk - 一个网络应用程序下的多个 facebook 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4931240/