Recuperar valor do AssemblyInfo.cs

20/12/2011

0

Ola,
Aguem pode me ajudar a solucionar esse problema:
Coloquei algumas informacoes nesse arquivo: meu titulo, meu produto, 1.0.0.0

[assembly: AssemblyTitle(meu titulo)]
[assembly: AssemblyDescription()]
[assembly: AssemblyConfiguration()]
[assembly: AssemblyCompany(Microsoft)]
[assembly: AssemblyProduct(meu produto)]
[assembly: AssemblyVersion(1.0.0.0)]

No pege load da master page: Segue o seguinte codigo:

protected void Page_Load(object sender, EventArgs e)
{

string AssembleTitle, AssembleVersion, AssembleProduct;

AssembleTitle = Convert.ToString( AssembleTitle);
AssembleProduct = Convert.ToString( AssembleProduct);
AssembleVersion = Convert.ToString( AssembleVersion);

Page.Title = AssembleTitle + : + AssembleProduct + : + AssembleVersion;

}

Qndo compilo, apresnta os seguintes erros:

- Use of unassigned local variable AssembleVersion
- Use of unassigned local variable AssembleTitle
- Use of unassigned local variable AssembleProduct

Independente se eu deixo ou nao somente a variavel do assembly do titulo, apresenta erro da mesma forma.






Jefferson

Jefferson

Responder

Posts

20/12/2011

Fabio Rosa

Olá! Veja o código abaixo:

            //Versão
            string version = this.GetType().Assembly.GetName().Version.ToString();

            //Título
            string title = string.Empty;

            System.Reflection.Assembly thisAssembly = this.GetType().Assembly;
            object[] attributes = thisAssembly.GetCustomAttributes(typeof(AssemblyTitleAttribute), false);
            if (attributes.Length == 1)
            {
               title = ((AssemblyTitleAttribute) attributes[0]).Title;
            }

            string product = string.Empty;

            //Produto
            attributes = thisAssembly.GetCustomAttributes(typeof(AssemblyProductAttribute), false);
            if (attributes.Length == 1)
            {
                product = ((AssemblyProductAttribute)attributes[0]).Product;
            }
Responder

20/12/2011

Jefferson

Valeu cara.

Mas o codigo estava dando erro de indice.

Alterei desta forma:
Funcionou

object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false);
AssemblyTitleAttribute tituloPagina = (AssemblyTitleAttribute)attributes[0];

string versao = this.GetType().Assembly.GetName().Version.ToString();

attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), false);
AssemblyProductAttribute produto = (AssemblyProductAttribute)attributes[0];

lbProduto.Text= produto.Product;
lbTituloPagina.Text= tituloPagina;
lbVersao.Text= versao;
Responder

20/12/2011

Jefferson

Valeu cara.

Mas o codigo estava dando erro de indice.

Alterei desta forma:
Funcionou

object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false);
AssemblyTitleAttribute tituloPagina = (AssemblyTitleAttribute)attributes[0];

string versao = this.GetType().Assembly.GetName().Version.ToString();

attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), false);
AssemblyProductAttribute produto = (AssemblyProductAttribute)attributes[0];

lbProduto.Text= produto.Product;
lbTituloPagina.Text= tituloPagina.Title;
lbVersao.Text= versao;
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar