Asp.net 如何在v5中使用CanvasAuthorizer.GetLoginUrl?

Asp.net 如何在v5中使用CanvasAuthorizer.GetLoginUrl?,asp.net,facebook,facebook-c#-sdk,Asp.net,Facebook,Facebook C# Sdk,我正在尝试将我的ASP.NET WebForms IFrame Canvas应用程序从Facbook C#SDK 4.02升级到5.03 beta版。大多数变化都相当直接。但是,我不能100%确定CanvasAuthorizer.GetLoginUrl() 这是我的v4.02代码 CanvasAuthorizer _authorizer = new CanvasAuthorizer {Perms = "publish_stream,offline_access"}; Uri authurl =

我正在尝试将我的ASP.NET WebForms IFrame Canvas应用程序从Facbook C#SDK 4.02升级到5.03 beta版。大多数变化都相当直接。但是,我不能100%确定CanvasAuthorizer.GetLoginUrl()

这是我的v4.02代码

CanvasAuthorizer _authorizer = new CanvasAuthorizer {Perms = "publish_stream,offline_access"};

Uri authurl = _authorizer.GetLoginUrl(new HttpRequestWrapper(Request));
CanvasRedirect(authurl.ToString());
下面是我根据上的php示例对v5.03的最佳猜测

CanvasAuthorizer\u authorizer=新的CanvasAuthorizer{Perms=“发布\u流,离线\u访问”};
字典参数=
新词典
{
{“scope”,_authorizer.Perms},
{“client_id”,_authorizer.AppId},
{“redirect_uri”,_authorizer.ReturnUrlPath},
{“响应类型”,“令牌”}
};
Uri authurl=\u authorizer.GetLoginUrl(参数);
画布重定向(authurl);

这样行吗?有更好的方法吗?

经过一些尝试和错误,我使用以下方法使其工作:

CanvasAuthorizer _authorizer = new CanvasAuthorizer {Perms = "publish_stream,offline_access"};
if (!_authorizer.IsAuthorized())
{
    _authorizer.HandleUnauthorizedRequest();
}
我还在我的Facebook应用程序设置中启用了“发布画布”。我不确定这是否有什么不同。
CanvasAuthorizer _authorizer = new CanvasAuthorizer {Perms = "publish_stream,offline_access"};
if (!_authorizer.IsAuthorized())
{
    _authorizer.HandleUnauthorizedRequest();
}