Общие переменные общего управления пользователя в ASP.NET 1.1 не работают должным образом - PullRequest
0 голосов
/ 29 сентября 2008

Допустим, у меня есть веб-форма, включающая некоторые пользовательские элементы управления. Тег заголовка для моей «основной» веб-формы создается в одном из пользовательских элементов управления. Передача этих данных в веб-форму в настоящее время выполняется следующим образом.

Public Sub SetPageValues(ByVal sTitle As String, ByVal sKeywords As String, ByVal sDesc As String)
    MySystem.Web.UI.Main.PageSettings(sKeywords, sDesc, sTitle)
End Sub

Main - название веб-формы. Вот подпрограмма, которая устанавливает эти значения в Main.

 Public Shared Sub PageSettings(ByVal strKeywords As String, ByVal strDesc As String, ByVal strTitle As String)
    Dim _lblTitle As System.Web.UI.webcontrols.Literal = lblTitle
    Dim _lblMetaDesc As System.Web.UI.webControls.Literal = lblMetaDesc
    Dim _lblMetaKeywords As System.Web.UI.WebControls.Literal = lblMetaKeywords
    Dim _lblMetatitle As System.Web.UI.WebControls.Literal = lblMetaTitle
    _lblTitle.Text = strTitle
    _lblMetaDesc.Text = "<meta name=""description"" content=""" + strDesc + """>"
    _lblMetaKeywords.Text = "<meta name=""keywords"" content=""" + strKeywords + """>"
    _lblMetatitle.Text = "<meta name=""title"" content=""" + strTitle + """>"
End Sub

После всего этого мы запускаем объединенную память и перезапускаем ее каждые 400 минут, однако заголовки страниц искажаются и отображаются неправильно. У кого-нибудь есть идеи кроме перехода на новую версию .net?

Создавая свойства в пользовательском элементе управления, теперь значения можно передавать правильно.

1 Ответ

1 голос
/ 29 сентября 2008

Лично вот что я бы сделал. Во-первых, измените НАЗВАНИЕ на HTML.GenericControl На стороне ASPX это будет выглядеть так:

<title runat="server" id="title" />

Затем я бы изменил теги META, чтобы они также были общими элементами управления html

<meta name="description" content="description" id="description" runat="server" />
<meta name="keywords" content="keys" id="keywords" runat="server" /> 

В этот момент вы можете изменить значения следующим образом:

title.InnerText = "This Title"
keywords.Attributes("content") = "key,word"
description.Attributes("content") = "A demonstration of Setting title and meta tags" 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...