在ASP.NET页面中标记对象的最佳方式是什么。(数据库中的资源)
我想知道在asp.net页面中标记对象(标签、gridview列、ValidatorCallout)的最佳方法是什么,其中的信息(文本)位于数据库的表中(表的id为object name Language1,Language2)。在ASP.NET页面中标记对象的最佳方式是什么。(数据库中的资源),asp.net,label,controls,multilingual,Asp.net,Label,Controls,Multilingual,我想知道在asp.net页面中标记对象(标签、gridview列、ValidatorCallout)的最佳方法是什么,其中的信息(文本)位于数据库的表中(表的id为object name Language1,Language2)。 我现在拥有的是一个方法,该方法获取我正在打开的页面上的所有控件(用户的语言)并登录,它通过传递“id screen”对表进行查询,该“id screen”返回相同的所有对象。在循环中完成此操作后,屏幕上的所有控件都将检查控件类型(标签、RequiredFieldVa
我现在拥有的是一个方法,该方法获取我正在打开的页面上的所有控件(用户的语言)并登录,它通过传递“id screen”对表进行查询,该“id screen”返回相同的所有对象。在循环中完成此操作后,屏幕上的所有控件都将检查控件类型(标签、RequiredFieldValidator)以正确设置属性(.Text if Label、.ErrorMessage if RequiredFieldValidator)。不幸的是,速度非常慢。是否有这样做的最佳实践 注意:App_LocalResources(.resx)不适用于我的情况 方法:
public void RotularObjetos(Control ctl)
{
foreach (Control c in ctl.Controls)
{
if (c.GetType() == typeof(Label))
{
var dicionario = ambiente.ListaObjeto(this.Modulo, this.IdEmpresa, this.IdIdioma, this.IdUsuario,
((Label)(c)).ID);
if (dicionario == null)
{
ambiente.IncluirDicionarioObjeto(this.Modulo, this.IdIdioma, 0, ((Label)(c)).ID,
AutoWare.FrameWork.ManterAmbiente.TipoObjeto.Label.GetHashCode(),
((Label)(c)).Text,
((Label)(c)).ToolTip == string.Empty
? ((Label)(c)).Text
: ((Label)(c)).ToolTip);
}
else
{
((Label)(c)).Text = dicionario.DS_ALIAS;
((Label)(c)).ToolTip = dicionario.DS_HELP;
}
}
else if (c.GetType() == typeof(RequiredFieldValidator))
{
var dicionario = ambiente.ListaObjeto(this.Modulo, this.IdEmpresa, this.IdIdioma, this.IdUsuario,
((RequiredFieldValidator)(c)).ID);
if (dicionario == null)
{
ambiente.IncluirDicionarioObjeto(this.Modulo, this.IdIdioma, 0,
((RequiredFieldValidator)(c)).ID,
AutoWare.FrameWork.ManterAmbiente.TipoObjeto
.RequiredFieldValidator.GetHashCode(),
((RequiredFieldValidator)(c)).ErrorMessage,
((RequiredFieldValidator)(c)).ToolTip == string.Empty
? ((RequiredFieldValidator)(c)).ErrorMessage
: ((RequiredFieldValidator)(c)).ToolTip);
}
else
{
((RequiredFieldValidator)(c)).ErrorMessage = dicionario.DS_ALIAS;
((RequiredFieldValidator)(c)).ToolTip = dicionario.DS_HELP;
}
}
else if (c.GetType() == typeof(LinkButton))
{
var dicionario = ambiente.ListaObjeto(this.Modulo, this.IdEmpresa, this.IdIdioma, this.IdUsuario,
((LinkButton)(c)).ID);
if (dicionario == null)
{
ambiente.IncluirDicionarioObjeto(this.Modulo, this.IdIdioma, 0, ((LinkButton)(c)).ID,
AutoWare.FrameWork.ManterAmbiente.TipoObjeto.LinkButton
.GetHashCode(), ((LinkButton)(c)).Text,
((LinkButton)(c)).ToolTip == string.Empty
? ((LinkButton)(c)).Text
: ((LinkButton)(c)).ToolTip);
}
else
{
((LinkButton)(c)).Text = dicionario.DS_ALIAS;
((LinkButton)(c)).ToolTip = dicionario.DS_HELP;
}
}
else if (c.GetType() == typeof(ImageButton))
{
var dicionario = ambiente.ListaObjeto(this.Modulo, this.IdEmpresa, this.IdIdioma, this.IdUsuario,
((ImageButton)(c)).ID);
if (dicionario == null)
{
ambiente.IncluirDicionarioObjeto(this.Modulo, this.IdIdioma, 0, ((ImageButton)(c)).ID,
AutoWare.FrameWork.ManterAmbiente.TipoObjeto.ImageButton
.GetHashCode(), string.Empty,
((ImageButton)(c)).ToolTip == string.Empty
? string.Empty
: ((ImageButton)(c)).ToolTip);
}
else
{
((ImageButton)(c)).ToolTip = dicionario.DS_HELP;
}
}
else if (c.GetType() == typeof(CheckBox))
{
var dicionario = ambiente.ListaObjeto(this.Modulo, this.IdEmpresa, this.IdIdioma, this.IdUsuario,
((CheckBox)(c)).ID);
if (dicionario == null)
{
ambiente.IncluirDicionarioObjeto(this.Modulo, this.IdIdioma, 0, ((CheckBox)(c)).ID,
AutoWare.FrameWork.ManterAmbiente.TipoObjeto.CheckBox
.GetHashCode(), string.Empty,
((CheckBox)(c)).ToolTip == string.Empty
? string.Empty
: ((CheckBox)(c)).ToolTip);
}
else
{
((CheckBox)(c)).Text = dicionario.DS_ALIAS;
((CheckBox)(c)).ToolTip = dicionario.DS_HELP;
}
}
else if (c.GetType() == typeof(Button))
{
var dicionario = ambiente.ListaObjeto(this.Modulo, this.IdEmpresa, this.IdIdioma, this.IdUsuario,
((Button)(c)).ID);
if (dicionario == null)
{
ambiente.IncluirDicionarioObjeto(this.Modulo, this.IdIdioma, 0, ((Button)(c)).ID,
AutoWare.FrameWork.ManterAmbiente.TipoObjeto.Button.GetHashCode
(), ((Button)(c)).Text,
((Button)(c)).ToolTip == string.Empty
? ((Button)(c)).Text
: ((Button)(c)).ToolTip);
}
else
{
((Button)(c)).Text = dicionario.DS_ALIAS;
((Button)(c)).ToolTip = dicionario.DS_HELP;
}
}
else if (c.GetType() == typeof(RadioButton))
{
var dicionario = ambiente.ListaObjeto(this.Modulo, this.IdEmpresa, this.IdIdioma, this.IdUsuario,
((RadioButton)(c)).ID);
if (dicionario == null)
{
ambiente.IncluirDicionarioObjeto(this.Modulo, this.IdIdioma, 0, ((RadioButton)(c)).ID,
AutoWare.FrameWork.ManterAmbiente.TipoObjeto.RadioButton
.GetHashCode(), ((RadioButton)(c)).Text,
((RadioButton)(c)).ToolTip == string.Empty
? ((RadioButton)(c)).Text
: ((RadioButton)(c)).ToolTip);
}
else
{
((RadioButton)(c)).Text = dicionario.DS_ALIAS;
((RadioButton)(c)).ToolTip = dicionario.DS_HELP;
}
}
else if (c.GetType() == typeof(GridView))
{
var grid = ambiente.ListaObjeto(this.Modulo, this.IdEmpresa, this.IdIdioma, this.IdUsuario,
((GridView)(c)).ID);
if (grid == null)
{
ambiente.IncluirDicionarioObjeto(this.Modulo, this.IdIdioma, 0, ((GridView)(c)).ID,
AutoWare.FrameWork.ManterAmbiente.TipoObjeto.GridView
.GetHashCode(), ((GridView)(c)).ToolTip,
((GridView)(c)).ToolTip);
grid = ambiente.ListaObjeto(this.Modulo, this.IdEmpresa, this.IdIdioma, this.IdUsuario,
((GridView)(c)).ID);
foreach (DataControlField child in ((GridView)(c)).Columns)
{
var coluna = ambiente.ListaObjeto(this.Modulo, grid.ID_DICIONARIO_OBJETO, this.IdEmpresa,
this.IdIdioma, this.IdUsuario, child.HeaderText);
if (coluna == null && child.HeaderText != string.Empty)
ambiente.IncluirDicionarioObjeto(this.Modulo, this.IdIdioma, grid.ID_DICIONARIO_OBJETO,
child.HeaderText,
AutoWare.FrameWork.ManterAmbiente.TipoObjeto
.GridViewColumn.GetHashCode(), child.HeaderText,
child.HeaderText);
else if (coluna != null)
child.HeaderText = coluna.DS_ALIAS;
}
}
else
{
((GridView)(c)).ToolTip = grid.DS_HELP;
foreach (DataControlField child in ((GridView)(c)).Columns)
{
var coluna = ambiente.ListaObjeto(this.Modulo, grid.ID_DICIONARIO_OBJETO, this.IdEmpresa,
this.IdIdioma, this.IdUsuario, child.HeaderText);
if (coluna == null && child.HeaderText != string.Empty)
ambiente.IncluirDicionarioObjeto(this.Modulo, this.IdIdioma, grid.ID_DICIONARIO_OBJETO,
child.HeaderText,
AutoWare.FrameWork.ManterAmbiente.TipoObjeto
.GridViewColumn.GetHashCode(), child.HeaderText,
child.HeaderText);
else if (coluna != null)
child.HeaderText = coluna.DS_ALIAS;
}
}
}
RotularObjetos(c);
}
}
非常感谢。您能发布执行属性设置的代码吗?我在问题中添加了我使用的函数。拥抱