隐藏基于数据库条目的链接

时间:2010-01-05 20:45:56

标签: database arrays dynamic visibility

我在页面上有一些链接,例如:

< a id="Digg" runat="server">< img alt="Digg" id="imgDigg" runat="server" src="~/resources/images/icons/social/digg_32.png" border="0" />< /a>

我有一个可以“打开”它们的数据库表,在我的代码后面我有以下内容:

string[] SocialMedia = new string[] { "Twitter", "Facebook", "LinkedIn", "Digg", "Email", "Print" };
        private void CheckForSocialMedia()
        {
            int i = 0;
            for (i = 0; i < SocialMedia.Length; i++)
            {
                bool AddSocialMedia = (bool)AllowSocialMedia(SocialMedia[i]);
                if (AddSocialMedia == false)
                {
                   // Hide the link: Digg.Visible = false;
                }
            }
        }

        protected bool AllowSocialMedia(string sSocialMedia)
        {
            SqlConnection myConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["dbConn"].ConnectionString);
            SqlCommand myCommand = myConnection.CreateCommand();
            myCommand.CommandText = " select Settings.AllowsocialMedia  " +
                                    " from ArticleSocialMediaSettings Settings " +
                                    " inner join SocialMedia on Settings.SocialMediaId = SocialMedia.id " +
                                    " where SocialMedia.NetworkName = '" + sSocialMedia + "'" +
                                    " and Settings.RetailerId =  '1234'";

            myConnection.Open();

            try
            {
                SqlDataReader myReader = myCommand.ExecuteReader();
                if (myReader.Read())
                {
                    return (bool)myReader["AllowsocialMedia"];
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return true;
        }

如果函数返回false,我该如何隐藏链接?或者有更好的方法吗?

2 个答案:

答案 0 :(得分:0)

看起来这是检查数据库的正确方法。要隐藏您可以使用的链接:

document.getElementById("Digg").style.display = "none";

您评论的位置。

答案 1 :(得分:0)

使用datalist重新设计

相关问题