none
Ayuda con publicacion sitio web en n-capas y con WCF RRS feed

  • Pregunta

  • Reciba un saludo de mi parte.

    Siempre he laborado con Mainframe, pero en el año 2008, me dieron los cursos de VS-2005 Enterprise.

    Desde ese tiempo, hasta finales de 2015, nunca volví a utilizar el VS.

    Como he estado sin trabajo, me he dedicado a realizar una aplicación en VS-2015, con C#, y framework  4.6.2.

    Algunos amigos me ayudaron un poco, pero he intentado publicarla en somee, y no he podido.

    El proyecto es en 5-capas y los servicios WCF son un proyecto dentro del proyecto principal.

    Lo publico como File system.

    Publico los servicios WCF en una biblioteca(aplicación) , y se visualizan, pero al subir el proyecto principal se ve la pagina de inicio, pero me da un error aparente en el ConnectionString.

    He visto muchos videos, leído, pero no entiendo porque sucede.

    Agradecería la ayuda.

    domingo, 25 de febrero de 2018 0:00

Respuestas

  • Finalmente pude solucionar el error, era bastante simple, en 

    System.webServer

    eliminar la sección de 

    <system.codedom>

    Y listo se ejecuto normalmente.

    Y esto fue lo que nadie me pudo indicar, por lo menos para este caso.

    • Marcado como respuesta JRAC_CR jueves, 29 de marzo de 2018 4:08
    jueves, 29 de marzo de 2018 4:08

Todas las respuestas

  • Sin que nos muestre el error exacto y la cadena de conexión que acualmente usa, diría yo que la probabilidad de que reciba una respuesta útil es muy baja.  Le agradeceremos que nos de cuanta información tenga, comenzando por la cadena de conexión y el mensaje de error tal como le aparece.

    Jose R. MCP
    Code Samples

    domingo, 25 de febrero de 2018 8:12
  • Buenas, 

    Muchas gracias Jose R.

    No me llego el aviso de alerta.

    Esta es la cadena de conexión.

     <add name="TecnoLaserBDConnectionString" connectionString="workstation id=TecnoLaserBD.mssql.somee.com;packet size=4096;user id=BomberoMTB_SQLLogin_1;pwd=xxxxxxxx;data source=TecnoLaserBD.mssql.somee.com;persist security info=False;initial catalog=TecnoLaserBD"
             providerName="System.Data.SqlClient"/>

    Este error sale ahora. si uso <customErrors mode="RemoteOnly" defaultRedirect="default.asp"/>

    Error System.ServiceModel.ProtocolException: The content type text/html; charset=utf-8 of the response message does not match the content type of the binding (text/xml; charset=utf-8). If using a custom encoder, be sure that the IsContentTypeSupported method is implemented properly. The first 1024 bytes of the response were: '

    si cambio a  <error redirect="/default.asp" statusCode="404"/> sale este error.

    Error System.ServiceModel.ServiceActivationException. The request service, 'http://tecnolaser.somee.com/ServiciosWCF/WCFOperacionesUsuario.svc' could not be activated.....

    Mi deseo es poder publicar esto, para ver si puedo laborar otra vez, en lo que me gusta, que es programar.

    Agradecería la ayuda.

    Saludos

    lunes, 12 de marzo de 2018 20:39
  • Nunca he visto el error de "could not be activated" antes.  Buscando un poco parece ser problemas de configuración de servidor.  Alguien aseguró que podría ser que el servicio de windows llamado "Net.Tcp Listening Adapter" podría no estar corriendo.  Sugiero que comience por ahí.  Esto es en el lado del servidor donde publica su aplicación.

    El primer error es entendible.  Un WCF usa XML para comunicarse.  Si hay un error y usted le dice que los errores deben redireccionarse a una página asp, pues el contenido será HTML y no XML.  O sea, no debería redireccionar errores del WCF de esa manera.


    Jose R. MCP
    Code Samples

    lunes, 12 de marzo de 2018 20:48
  • Pero entonces porque si instalo solo los servicios si se pueden accesar?

    Y como haría para ver si  "Net.Tcp Listening Adapter", esta o no corriendo en el Hosting Somee?

    miércoles, 14 de marzo de 2018 1:43
  • Este es el error completo


    Error System.ServiceModel.EndpointNotFoundException: There was no endpoint listening at http://tecnolaser.somee.com/ServiciosWCF/WCFOperacionesUsuario.svc that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details. ---> System.Net.WebException: The remote server returned an error: (404) Not Found. at System.Net.HttpWebRequest.GetResponse() at System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout) --- End of inner exception stack trace --- Server stack trace: at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException, HttpWebRequest request, HttpAbortReason abortReason) at System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout) at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout) at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation) at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message) Exception rethrown at [0]: at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) at TecnoLaserW.WCFOperacionesUsuario.IWCFOperacionesUsuario.ConsultarUsuario(Usuario paramUsuario) at TecnoLaserW.Paginas.PagLogin.btnIniciarSesionUsuario_Click(Object sender, EventArgs e)

    miércoles, 14 de marzo de 2018 4:06
  • El error dice que la dirección utilizada para acceder al servicio es incorrecta, que no hay ningún servicio en la dirección solicitada.  Supongo que debe asegurarse de que usa la dirección correcta.

    Jose R. MCP
    Code Samples

    miércoles, 14 de marzo de 2018 17:26
  • Buenas, 

      Esta es la dirección que aparece en el browser.

    http://tecnolaser.somee.com/ServiciosWCF/WCFOperacionesUsuario.svc

    si la accesa se ve la descripción del servicio. 

    WCFOperacionesUsuario Service
    You have created a service.
    To test this service, you will need to create a client and use it to call the service. You can do this using the svcutil.exe tool from the command line with the following syntax:
    svcutil.exe http://tecnolaser.somee.com/ServiciosWCF/WCFOperacionesUsuario.svc?wsdl
    You can also access the service description as a single file:
    http://tecnolaser.somee.com/ServiciosWCF/WCFOperacionesUsuario.svc?singleWsdl

    This will generate a configuration file and a code file that contains the client class. Add the two files to your client application and use the generated client class to call the Service. For example:
    C#
    class Test
    {
        static void Main()
        {
            WCFOperacionesUsuarioClient client = new WCFOperacionesUsuarioClient();
            // Use the 'client' variable to call operations on the service.
            // Always close the client.
            client.Close();
        }
    }

    En estos momentos que solo tiene los servicios.

    Como les digo, si incluyo el proyecto principal en el hosting, y lo bajo en la raíz, se pierde y es donde indica que no lo encuentra que "error interno".

    jueves, 15 de marzo de 2018 16:50
  • Finalmente pude solucionar el error, era bastante simple, en 

    System.webServer

    eliminar la sección de 

    <system.codedom>

    Y listo se ejecuto normalmente.

    Y esto fue lo que nadie me pudo indicar, por lo menos para este caso.

    • Marcado como respuesta JRAC_CR jueves, 29 de marzo de 2018 4:08
    jueves, 29 de marzo de 2018 4:08