我正在使用Silverlight创建一个简单的应用程序在Facebook上运行。
我已经明白,要邀请朋友加注,我必须拨打fb:request-form
,或使用Simpler Requests。
如何从Silverlight In-Browser中调用其中一种方法?
答案 0 :(得分:0)
您可以将一些JavaScript代码(用于使用Simpler请求)放入您的网页,并从Silverlight应用程序调用此JavaScript。请参阅Facebook C#SDK包中的“CSSilverlightInBrowser”示例,此示例中的MainPage.xaml.cs中的LoginToFbViaJs方法通过javascript进行登录请求。
答案 1 :(得分:0)
我通过将facebook javascript代码放在包含silverlight xap的aspx文件中解决了这个问题,然后通过silverlight调用该代码。
此代码进入我的aspx文件:
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
FB.init({
appId : 'APP_ID',
status : true,
cookie : true,
oauth: true
});
function sendRequestToRecipients() {
var user_ids = document.getElementsByName("user_ids")[0].value;
FB.ui({method: 'apprequests',
message: 'My Great Request',
to: user_ids,
}, requestCallback);
}
function sendRequestViaMultiFriendSelector() {
FB.ui({method: 'apprequests',
message: 'My Great Request'
}, requestCallback);
}
function requestCallback(response) {
// Handle callback here
}
</script>
然后,您可以使用以下代码从Silverlight中调用它:
var param = new object[] { };
HtmlPage.Window.Invoke("sendRequestViaMultiFriendSelector", param);