首页 新闻 搜索 专区 学院

帮忙看一段反编译后的代码,他的原始代码应该是什么样的

0
[已关闭问题] 解决于 2013-10-24 09:36
public ActionResult Details(int? id)
{
        ((dynamic) base.ViewBag).Title = Globals.HtmlDecode(modelExByCache.Title);
        if (this.WebSiteSet != null)
        {
            dynamic viewBag = base.ViewBag;
            string str3 = "-" + Globals.HtmlDecode(this.WebSiteSet.WebName);
            if (<Details>o__SiteContainer0.<>p__Site2 == null)
            {
                <Details>o__SiteContainer0.<>p__Site2 = CallSite<Func<CallSite, object, bool>>.Create(Binder.IsEvent(CSharpBinderFlags.None, "Title", typeof(ArticleController)));
            }
            if (!<Details>o__SiteContainer0.<>p__Site2.Target(<Details>o__SiteContainer0.<>p__Site2, viewBag))
            {
                if (<Details>o__SiteContainer0.<>p__Site4 == null)
                {
                    <Details>o__SiteContainer0.<>p__Site4 = CallSite<Func<CallSite, object, string, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.AddAssign, typeof(ArticleController), new CSharpArgumentInfo[] { CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null), CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null) }));
                }
                viewBag.Title = <Details>o__SiteContainer0.<>p__Site4.Target(<Details>o__SiteContainer0.<>p__Site4, viewBag.Title, str3);
            }
            else
            {
                viewBag.add_Title(str3);
            }
        }
        
    return base.View(modelExByCache);
}

 

 

这是一段MVC3 Action中反编译后的代码。

求教下面这几句是什么意思?能否给还原一下。原始代码应该是怎么样的?

if (<Details>o__SiteContainer0.<>p__Site2 == null)
            {
                <Details>o__SiteContainer0.<>p__Site2 = CallSite<Func<CallSite, object, bool>>.Create(Binder.IsEvent(CSharpBinderFlags.None, "Title", typeof(ArticleController)));
            }
            if (!<Details>o__SiteContainer0.<>p__Site2.Target(<Details>o__SiteContainer0.<>p__Site2, viewBag))
            {
                if (<Details>o__SiteContainer0.<>p__Site4 == null)
                {
                    <Details>o__SiteContainer0.<>p__Site4 = CallSite<Func<CallSite, object, string, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.AddAssign, typeof(ArticleController), new CSharpArgumentInfo[] { CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null), CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null) }));
                }
                viewBag.Title = <Details>o__SiteContainer0.<>p__Site4.Target(<Details>o__SiteContainer0.<>p__Site4, viewBag.Title, str3);
            }
调调儿的主页 调调儿 | 初学一级 | 园豆:155
提问于:2013-10-23 14:55
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册