即使在通过SDK成功登录Facebook后,BrowserSession.LoginComplete事件也无法正常工作

时间:2010-02-05 12:31:46

标签: c# facebook facebook-c#-sdk

当我通过Browsersession.Login()登录Facebook时,它运行正常,但是 在此期间,BrowserSession.LoginComplete事件无效。

有人能说明为什么我的项目会发生这件事吗?

1 个答案:

答案 0 :(得分:0)

  1. 请检查您的Facebook应用程序中的连接URL。 如果您正在使用localhost,那么它应该是:http:// localhost:[port#]
  2. 检查fblogin.js文件,其中xd_receiver.htm路径应该正确 (查看:https://developers.facebook.com/docs/reference/oldjavascript/FB.Facebook.init/
  3. 同时检查:

    1. 检查您是否使用正确的API密钥进行浏览器会话

    2. 在fblogin.js中,silverlightPluginId是正确的。 示例如下: SLHostPage:

      <div id="silverlightControlHost">
          <object id="_sl_facebookapp" data="data:application/x-silverlight-2," type="application/x-silverlight-2"
              width="100%" height="100%">
              <param name="source" value="ClientBin/SilverlightFacebookApp.xap" />
              <param name="onError" value="onSilverlightError" />
              <param name="background" value="white" />
              <param name="minRuntimeVersion" value="3.0.40624.0" />
              <param name="autoUpgrade" value="true" />
              <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40624.0" style="text-decoration: none">
                  <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight"
                      style="border-style: none" />
              </a>
          </object>
          <iframe id="_sl_historyFrame" style="visibility: hidden; height: 0px; width: 0px;
              border: 0px"></iframe>
      </div>
      

      fblogin.js: //验证此变量是否与Silverlight插件ID匹配 var silverlightPluginId ='_sl_facebookapp';

    3. 检查您的SL应用是否实现了事件处理程序

    4. _browserSession.LoginCompleted + = browserSession_LoginCompleted;

          private void browserSession_LoginCompleted(object sender, EventArgs e)
          {
              _facebookAPI = new Api(_browserSession);
          }
      

      请参阅:http://social.msdn.microsoft.com/Forums/en-US/silverlightnet/thread/d14b0ac5-4539-4cae-ba9e-4020e488d458