2010-10-12 42 views
11

creado. Creé una pequeña aplicación de Silverlight 4.0/RIA Services y la probé. Desarrollé la aplicación en una máquina en casa y necesité moverla al dominio de producción en el trabajo. Hice esto empujándolo al repositorio de origen y luego clonándolo en una máquina de desarrollo en el trabajo. Se genera sin un error en ambas ubicaciones.El 'esquema' de esquema de URI proporcionado no es válido. 'Http'

El problema se produce cuando intento depurar en la nueva ubicación. En el primer método Load() 'en el contexto de dominio me sale el siguiente error:

The provided URI scheme 'file' is invalid expected 'http' 

me sale que el depurador está tratando de correr con el archivo URI basado en lugar de un URI HTTP. ¿Pero por qué? ¿Y cómo lo arreglo?

La búsqueda a través de SO devolvió algunos errores similares con respecto a los esquemas de URI no válidos, pero ninguno de ellos me ayudó con este problema específico.

Gracias, Jim

Respuesta

27

Asegúrate de que tu proyecto de inicio sea el proyecto web, y no el proyecto de Silverlight en sí.

+4

O, si depura el navegador, configure el proyecto Silverlight como inicio, pero en la configuración del proyecto Silverlight, en "Depurar", establezca el proyecto del servidor como la aplicación Fuera del navegador en lugar del proyecto silverlight. No es totalmente intuitivo, pero debes hacer esto para deshacerte del problema "file: //". – JoeCool

+1

gracias que ayudó. Solo quiero agregar un poco en caso de que alguien lo reciba. mi error comenzó a suceder cuando eliminé mi archivo suo, supongo que la referencia al proyecto de inicio está en este archivo. – ramnz

0

Estoy bastante seguro de que se supone que para hacer referencia a un archivo del lado del servidor, no un archivo local. Además, la mayoría de las aplicaciones de Silverlight no tienen acceso a los archivos locales.

+0

El programa no está escrito para acceder a los archivos locales. El error ocurre cuando el módulo Silverlight realiza la llamada al método de servicio RIA. Esto funcionó en el entorno de desarrollo original y solo falló después de pasar a otro entorno idéntico (por lo que puedo decir, pero obviamente no del todo). –

1

Lo que probablemente está sucediendo es que la aplicación del cliente Silverlight está intentando comunicarse con el servicio web de los Servicios RIA del lado del servidor utilizando un protocolo "file: //".
¿Ha iniciado el archivo XAP de Silverlight directamente desde el sistema de archivos del servidor en lugar de a través de una URL 'http: //' Silverlight está tratando de usar el mismo protocolo que el utilizado para obtener su archivo XAP.
Para la misma razón, al iniciar la aplicación desde Visual Studio, establezca el proyecto web como el proyecto de inicio en lugar del proyecto Silverlight (cliente).

1

Si está ejecutando OOB (Out Of Browser) y desea depurar, entonces usted necesita configurar su proyecto de cliente de Silverlight como el proyecto de inicio, también dentro del proyecto del servidor, haga clic derecho en su '* TestPage.html' y 'Establecer como página de inicio'. Luego, si obtiene el error ...

The provided URI scheme 'file' is invalid expected 'http' 

A continuación, abra la página de propiedades del cliente de Silverlight y desactive la opción "Habilitar la ejecución de la aplicación fuera del navegador", haga clic en Guardar y luego vuelva a activar la configuración y debería funcionar. ver ... http://blogs.msdn.com/b/deepm/archive/2010/07/16/debugging-an-oob-silverlight-business-application.aspx

+0

Al igual que publiqué anteriormente en mi comentario para ZunTzu, también debe ir a la configuración del proyecto Silverlight, y en "Depurar" configure el proyecto del servidor como la aplicación Fuera del navegador en lugar del proyecto Silverlight. – JoeCool

Cuestiones relacionadas