Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

gilbertojr

Chamar uma Classe C#!

Recommended Posts

estou tendo problemas para montar o script aqui.

programava em asp e tudo era muito simples mas agora no asp.net estou apanhando igual a um cachorro sem dono na rua!

 

seguinte tenho uma classe chamada 'voids' com o nome voids.cs , que está assim:

 

voids.cs

public class voids
{
	String cores(int x, int y, int r)
	{
		string resultado;
		if (r == 1)
		{
			resultado = "f_laranja";
		}
		else 
		{
			if (y == 1)
			{
				resultado = "f_preto";
			}
			else
			{
			switch (x)
			{
				case 0:
					resultado="f_azul";
					break;
				case 1:
					resultado="f_cinza_claro";
					break;
				case 2:
					resultado="f_verde";
					break;
				case 3:
					resultado="f_marrom";
					break;
				case 4:
					resultado="f_amarelo";
					break;
				case 5:
					resultado="f_vermelho";
					break;
				case 6:
					resultado="f_rosa";
					break;
				case 7:
					resultado="f_cinza";
					break;
				default:
			resultado="";
        break;
		}
		}
		}
		return resultado;
	}
}

e não estou conseguindo chamar isso no 'index2.aspx.cs' não está dando certo, apresenta erro onde esta em vermelho

o erro é "

 

Descrição: Erro ao compilar um recurso necessário para atender esta solicitação. Examine os detalhes específicos do erro e modifique o código fonte apropriadamente.

Mensagem de Erro do Compilador: CS1061: 'voids' não contém uma definição para 'cores' e nenhum método de extensão 'cores' aceita que um primeiro argumento de tipo 'voids' seja encontrado (você não está usando uma diretriz ou referência de assembly?)"

 

veja: em "fl.cores..." em diante.

 

index2.aspx.cs

voids fl = new voids();
		while(x < totalOS)
		{
			if(y == limiteColuna)
			{
				bod.Text += tdOS + "<div class='webkitb '" + fl.cores(tabela.Rows[x]["situacao"], tabela.Rows[x]["chamado"],0) + " id='id" + tabela.Rows[x]["id"] + "' style='margin:auto;'>" + x + " - " + tabela.Rows[x]["id"] + "</div>" + tdFecha + trFecha;
				y = 0;
			}
			else
			{
				bod.Text += tdOS + "<div class='webkitb'" + fl.cores(tabela.Rows[x]["situacao"], tabela.Rows[x]["chamado"], 0) + " id='id" + tabela.Rows[x]["id"] + "' style='margin:auto;'>" + x + " - " + tabela.Rows[x]["id"] + "</div>" + tdFecha;
				y++;
			}
			//--
			if (x == totalOS)
			{
				bod.Text += tabelaFecha;
			}
			x++;
		}

Compartilhar este post


Link para o post
Compartilhar em outros sites

O método Cores tem que ser Public

 

 

Public String Cores

 

Ou estático.

 

mudei agora para `public static string cores(int x, int y, int r)` mas ainda apresenta erro no "xf.cores(tabela.Rows[x]["situacao"], tabela.Rows[x]["chamado"], 0)"

 

agora o erro mudou para

 

Descrição: Erro ao compilar um recurso necessário para atender esta solicitação. Examine os detalhes específicos do erro e modifique o código fonte apropriadamente. Mensagem de Erro do Compilador: CS1502: O melhor método sobrecarregado compatível com 'voids.cores(int, int, int)' tem alguns argumentos inválidos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Puts,,, erro na classe? então o erro está aqui acho,

 

fl.cores(tabela.Rows[x]["situacao"], tabela.Rows[x]["chamado"], 0)

porque quando coloco

 

fl.cores(2, 0, 0)

funciona ,, mas os dados " 2,0,0 " viriam diferentes do db.. agora não entendi porra nenhuma.

 

acho que vou ficar no ASP clássico mesmo muito tenso esse C#.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não cara, o erro está no arquivo da sua classe, você tem que compilar ele para que você possa debugar erros e ver o porque sua classe não funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.