如何在ASP.NET MVC中实现Disqus?

jim*_*lan 8 asp.net asp.net-mvc disqus

我正在为公共网站指定构建/购买权衡并且已经达到了一个相当有趣的途径.

背景

该网站的部分设计是将评论与一组明显具有自己IDss的不同"项目"相结合.(即/食谱/ 23或设备/ 16等,等).

最初,我已经指定了带标签的评论系统.然而,项目发起人已经回来询问是否很容易将Disqus纳入混合.我之前使用过Joomla(从未在.NET中)并且认为这将是一个好主意,因为默认情况下,评论会通过常用的社交网络媒体自动分配.

在ASP.NET MVC上建立一个无缝工作的Disqus实现是否相当轻松?ASP.NET MVC中是否有教程或者如何使用Disqus的解决方案?我已经看过这个例子,到目前为止已阅读过文档.

jcr*_*898 15

很明显,Disqus有一个很棒的nuget包.

Install-Package Disqus.Helper
Run Code Online (Sandbox Code Playgroud)

然后就像在你的视图,部分或局部视图中粘贴它一样简单......

@Disqus {
     Disqus.Initialize("YourForumShortName")
}
@Discus.ShowComments("PageIdentifierOfYourChoice")
Run Code Online (Sandbox Code Playgroud)

http://disqusforwebpages.codeplex.com/documentation


jim*_*lan 6

我选择使用异步JavaScript加载方法(而不是使用完整的API方法).这是在ASPNET MVC中使用它的简单方法(它也适用于ASP.NET):

文档:

<!-- add the div to receive the comments via ajax -->
<div id="disqus_thread"></div>

<!-- the required javascript link to disqus -->
<script type="text/javascript">
    /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
    var disqus_shortname = 'mydisqusname';

    // Question pour XWiki : ici il faut que je configure un identifier
    // c'est comme un sujet de Mail. Il faudrait que je mette par exemple
    // l'url de la page XWiki afin que les commentaires soient regroupes

    // ensemble par article. Bref est ce que vous pouvez me mettre un ID ?

    var disqus_identifier = 'comments-league-<%= Html.Encode(Model.ID) %>';
    var disqus_url = '<%= HttpContext.Current.Request.Url %>';
    // using disqus_developer = 1 helps to debug to localhost etc..
    var disqus_developer = 1;


    /* * * DON'T EDIT BELOW THIS LINE * * */
    (function() {
        var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
        dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';

        (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
    })();
</script>
Run Code Online (Sandbox Code Playgroud)

这里的所有都是它的.