HELP COM CRIA?ÃO DE API / WEB SERVICE COM BD MYSQL
Como falei anteriormente, o uso de Orientação a Objetos é fundamental.
Você tem uma classe de pacientes, certo? E nesta classe você tem os atributos do paciente, como nome, unidade e unidade de destino, correto?
Se não, é melhor criar uma classe com estes atributos.
Como disse anteriormente, um web-service ou uma web api retornam um XML ou JSON, ou seja, você já tentou serializar um listview? Acho que não vai dar certo.
Public Class Paciente
Public Property nome as string
Public Property unidade as Unidade
End Class
Public Class Unidade
Public Property id as integer
Public property nome as string
End Class
Veja que criei duas classe acima, uma que é o paciente, e outra que é a unidade.
A classe paciente está instanciando outra classe, a unidade, que por consequência poderia ter dentro da mesma classe, uma instancia para outra, e assim sucessivamente.
Agora, posso preencher minha classe e retornar uma lista da mesma.
Public Function ListarPacientes() as List(of Paciente)
Dim listaPacientes as new List(of Paciente)
Do While(dr.Read())
dim paciente as new Paciente
paciente.nome = dr.item([Ô]nome[Ô])
paciente.unidade.id = dr.item([Ô]id[Ô])
paciente.unidade.nome = dr.item([Ô]nome_unidade[Ô])
listaPacientes.add(paciente)
loop
return listaPacientes
end Function
Esta seria uma ideia básica do que você tem que fazer, o Web Service ou a Web API devem tratar somente dos dados e não do controle que você irá utilizar.
Desta forma, você pode carregar uma ListView, DataGrid, ou qualquer outro objeto que possa receber uma lista de dados. Já pensou que no android, por exemplo, não seria possÃvel receber uma lista da forma que fez acima, ou que ele não tem o mesmo objeto que está sendo esperado, mas o mesmo tem um objeto [Ô]Parecido[Ô] com um listview, que trabalha de forma similar. Da forma que fiz, você pode retornar apenas os dados em forma de XML ou JSON, e dentro do meu código eu posso [Ô]tratar[Ô] isto da forma que quiser... esta é a ideia.
Abastração
Herança
Polimorfismo
Citação::
Aproveitando o resumo que fiz acima, leia um pouco sobre abstração, herança e polimorfismo.
Abastração
Herança
Polimorfismo
Man mais uma vez obrigada por toda a ajuda, sabe me dizer sobre o erro que postei já viu algo?
Server Error in [ô]/[ô] Application.
Runtime Error
Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.
Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a [Ô]web.config[Ô] configuration file located in the root directory of the current web application. This <customErrors> tag should then have its [Ô]mode[Ô] attribute set to [Ô]Off[Ô].
<!-- Web.Config Configuration File -->
<configuration>
<system.web>
<customErrors mode=[Ô]Off[Ô]/>
</system.web>
</configuration>
Notes: The current error page you are seeing can be replaced by a custom error page by modifying the [Ô]defaultRedirect[Ô] attribute of the application[ô]s <customErrors> configuration tag to point to a custom error page URL.
<!-- Web.Config Configuration File -->
<configuration>
<system.web>
<customErrors mode=[Ô]RemoteOnly[Ô] defaultRedirect=[Ô]mycustompage.htm[Ô]/>
</system.web>
</configuration>
e troca isso:
<!-- Web.Config Configuration File -->
<configuration>
<system.web>
<customErrors mode=[Ô]Off[Ô]/>
</system.web>
</configuration>
Por isso:
<!-- Web.Config Configuration File -->
<configuration>
<system.web>
<customErrors mode=[Ô]RemoteOnly[Ô] defaultRedirect=[Ô]mycustompage.htm[Ô]/>
</system.web>
</configuration>
Citação::
Abre o arquivo de configuração app.config (se não estiver errado quanto ao nome)
e troca isso:
<!-- Web.Config Configuration File -->
<configuration>
<system.web>
<customErrors mode=[Ô]Off[Ô]/>
</system.web>
</configuration>
Por isso:
<!-- Web.Config Configuration File -->
<configuration>
<system.web>
<customErrors mode=[Ô]RemoteOnly[Ô] defaultRedirect=[Ô]mycustompage.htm[Ô]/>
</system.web>
</configuration>
Já fiz isso da a mesma coisa...
Precisa ver se no seu servidor não é necessário realizar alguma configuração, normalmente você precisa indicar a sua pasta como uma aplicação .net para que o servidor possa [Ô]entender[Ô].
<configuration>
<system.web>
<compilation debug=[Ô]true[Ô] strict=[Ô]false[Ô] explicit=[Ô]true[Ô] targetFramework=[Ô]4.0[Ô] />
</system.web>
<connectionStrings>
<add name=[Ô]teste[Ô] connectionString=[Ô]Database=teste;Data Source=localhost;User Id=root;Password=teste;[Ô] providerName=[Ô]MySqlProviders[Ô] />
</connectionStrings>
</configuration>
Sempre que você for publicar, deve ir em [Ô]Build>Publish (nome da sua solução)[Ô].
Tô achando que pode ser algo de configuração do IIS... Publicou ele direitinho lá?
Abraços!
Citação::
Não precisa ficar mexendo no .Config. A mensagem só tá falando que aconteceu algum erro genérico e se você quiser ver os detalhes do erro, pode habilitar o retorno de mensagem detalhada no config.
Tô achando que pode ser algo de configuração do IIS... Publicou ele direitinho lá?
Abraços!
Depois de muita luta consegui, kkkkk testei tudo que fiz no final de semana cara muito bom isso... to lendo mais coisas aqui que o Guimoraes passou... Mais fiquei feliz que funcionou no meu serviço o viadao do chefe tambem ficou feliz, como sempre vai levar todo o crédito pilanttra mais fazer o que kkkkk essa é a vida só falta mais 4 Meses....