如何避免在C#中使用多个视图状态的硬编码? [英] How to avoid hardcoding of using multiple viewstate in C#?

查看:58
本文介绍了如何避免在C#中使用多个视图状态的硬编码?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

if (ViewState["OfferID"].ToString() == "1063" || ViewState["OfferID"].ToString() == "1717" || ViewState["OfferID"].ToString() == "922" || ViewState["OfferID"].ToString() == "3212"
                 || ViewState["OfferID"].ToString() == "1649" || ViewState["OfferID"].ToString() == "699" || ViewState["OfferID"].ToString() == "1952"
                 || ViewState["OfferID"].ToString() == "2222" || ViewState["OfferID"].ToString() == "2223" || ViewState["OfferID"].ToString() == "2279"
                 || ViewState["OfferID"].ToString() == "2340" || ViewState["OfferID"].ToString() == "2341" || ViewState["OfferID"].ToString() == "2342"
               || ViewState["OfferID"].ToString() == "3736" || ViewState["OfferID"].ToString() == "3714" || ViewState["OfferID"].ToString() == "3657" || ViewState["OfferID"].ToString() == "3319" || ViewState["OfferID"].ToString() == "3318" || ViewState["OfferID"].ToString() == "3651" || ViewState["OfferID"].ToString() == "3650" || ViewState["OfferID"].ToString() == "3649" || ViewState["OfferID"].ToString() == "3639" || ViewState["OfferID"].ToString() == "3596" || ViewState["OfferID"].ToString() == "3549" || ViewState["OfferID"].ToString() == "3548" || ViewState["OfferID"].ToString() == "3492" || ViewState["OfferID"].ToString() == "3340" || ViewState["OfferID"].ToString() == "3341" || ViewState["OfferID"].ToString() == "3274" || ViewState["OfferID"].ToString() == "3173" || ViewState["OfferID"].ToString() == "3144" || ViewState["OfferID"].ToString() == "3036" || ViewState["OfferID"].ToString() == "2727" || ViewState["OfferID"].ToString() == "2704" || ViewState["OfferID"].ToString() == "2280" || ViewState["OfferID"].ToString() == "2970" || ViewState["OfferID"].ToString() == "2473" || ViewState["OfferID"].ToString() == "2297" || ViewState["OfferID"].ToString() == "2427" || ViewState["OfferID"].ToString() == "2460")
            {
                trustedFormScript = "<script type='text/javascript'>";
                trustedFormScript = trustedFormScript + "(function() {";
                trustedFormScript = trustedFormScript + "var field = 'xxTrustedFormCertUrl';";
                trustedFormScript = trustedFormScript + "var provideReferrer = false;";
                trustedFormScript = trustedFormScript + "var tf = document.createElement('script');";
                trustedFormScript = trustedFormScript + "tf.type = 'text/javascript'; tf.async = true; ";
                trustedFormScript = trustedFormScript + "tf.src = 'http' + ('https:' == document.location.protocol ? 's' : '') + '://api.trustedform.com/trustedform.js?provide_referrer=' + escape(provideReferrer) + '&field=' + escape(field) + '&l='+new Date().getTime()+Math.random();";
                trustedFormScript = trustedFormScript + "var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(tf, s); }";
                trustedFormScript = trustedFormScript + ")();function trustedFormCertUrlCallback(certificateUrl) {";
                trustedFormScript = trustedFormScript + "$.get('savetrustedform.aspx?url=' + certificateUrl + '&oid=" + ViewState["OfferID"].ToString() + "&email=" + emailad + "', function(data) { });}";
                trustedFormScript = trustedFormScript + "</script>";
            }





我的尝试:



大家好,我给出了这个ViewState代码[OfferID]硬编码为'if'块中的每个优惠。在代码中我有4个带有多个Viewstate的'if'语句,其提供ID是硬编码的。我被告知要删除这些硬编码并使其变得通用。我浏览了这个并找到了一个选项来将这些offerIds存储在单个视图状态中。还有其他选择可供尝试。我是.net开发的新手,所以请分享一些你的知识。



What I have tried:

Hi Guys, I'am given with this code of ViewState["OfferID"] hardcoded for each and every offer in 'if' block. In the code I've 4 such 'if' statement with multiple Viewstate whose offer id is hardcoded. I'am told to remove these hardcoding and make it general. I browsed for this and found one option to store these offerIds in single viewstate. Is there any other options to try with. I am new in .net development so please share some knowledge of you.

推荐答案

.get('savetrustedform.aspx?url ='+ certificateUrl +'& oid = + ViewState [ OfferID]。ToString()+ & email = + emailad + ',function(data){});};
trustedFormScript = trustedFormScript + < / script>;
}
.get('savetrustedform.aspx?url=' + certificateUrl + '&oid=" + ViewState["OfferID"].ToString() + "&email=" + emailad + "', function(data) { });}"; trustedFormScript = trustedFormScript + "</script>"; }





我尝试过的事情:



大家好,我给了这个ViewState代码[OfferID]硬编码对于'if'块中的每个商品。在代码中我有4个这样的'if'语句,其中包含多个Viewstate,其商品ID是硬编码的。我被告知删除这些硬编码并使其成为通用我浏览了这个,发现了一个选项,可以将这些offerIds存储在单个视图状态中。还有其他选择可供尝试。我是.net开发的新手,所以请分享一些你的知识。



What I have tried:

Hi Guys, I'am given with this code of ViewState["OfferID"] hardcoded for each and every offer in 'if' block. In the code I've 4 such 'if' statement with multiple Viewstate whose offer id is hardcoded. I'am told to remove these hardcoding and make it general. I browsed for this and found one option to store these offerIds in single viewstate. Is there any other options to try with. I am new in .net development so please share some knowledge of you.


使用以下代码简化你的检查:



Use the following code to simplify your checks:

string IDs = "1063,1717,922";
       string OfferID = ViewState["OfferID"].ToString();
       if (IDs.Split(',').Contains(OfferID))
       {
           trustedFormScript = "&lt;script type='text/javascript'>";
           trustedFormScript = trustedFormScript + "(function() {";
           trustedFormScript = trustedFormScript + "var field = 'xxTrustedFormCertUrl';";
           trustedFormScript = trustedFormScript + "var provideReferrer = false;";
           trustedFormScript = trustedFormScript + "var tf = document.createElement('script');";
           trustedFormScript = trustedFormScript + "tf.type = 'text/javascript'; tf.async = true; ";
           trustedFormScript = trustedFormScript + "tf.src = 'http' + ('https:' == document.location.protocol ? 's' : '') + '://api.trustedform.com/trustedform.js?provide_referrer=' + escape(provideReferrer) + '&field=' + escape(field) + '&l='+new Date().getTime()+Math.random();";
           trustedFormScript = trustedFormScript + "var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(tf, s); }";
           trustedFormScript = trustedFormScript + ")();function trustedFormCertUrlCallback(certificateUrl) {";
           trustedFormScript = trustedFormScript + "


.get('savetrustedform。 aspx?url ='+ certificateUrl +'& oid = + ViewState [ OfferID]。ToString()+ & email = + emailad + ',function(data){});};
trustedFormScript = trustedFormScript + & lt; / script>;
}
.get('savetrustedform.aspx?url=' + certificateUrl + '&oid=" + ViewState["OfferID"].ToString() + "&email=" + emailad + "', function(data) { });}"; trustedFormScript = trustedFormScript + "&lt;/script>"; }


这篇关于如何避免在C#中使用多个视图状态的硬编码?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆