2009-12-01 33 views
45

Estoy desarrollando un servicio de Windows que expone un servicio WCF destinado a ser consumido por una aplicación de Silverlight, como se explica en esta entrada del blog: http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2008/03/27/10291.aspx¿Dónde está System.ServiceModel.Web.dll?

El problema que estoy enfrentando es que necesito utilizar el WebInvoke attribute, que es definido en el ensamblado System.ServiceModel.Web.dll, pero cuando trato de agregar una referencia a ese ensamblado en el proyecto (usando el cuadro de diálogo Agregar referencia de Visual Studio - pestaña .NET), no hay ensamblado con ese nombre.

Entonces, ¿estoy haciendo algo mal, este ensamblaje no es parte del estándar .NET Framework, o es un error en Visual Studio? Por cierto, estoy usando VS2010 beta 2 y los objetivos del proyecto .NET Framework 4.

Respuesta

98

¿Está apuntando .NET4 completo o perfil de cliente? Este último no incluye el ensamblado System.ServiceModel.Web.

+1

Eso es, me lo perdí. ¡Gracias! – Konamiman

+0

Resuelve mi problema también ... – abhishek

+0

Esto ayudó a resolver mi problema también. Gracias – ganeshran

37

Aparentemente al seleccionar .NET Framework 4.0 al crear el proyecto, Visual Studio 2010 Beta 2 apunta realmente .NET framework 4 perfil de cliente. Cambie el marco de destino a .NET framework 4 usando las propiedades del proyecto.

alt text http://i47.tinypic.com/2hgbyb9.png

+0

no puedo encontrar dónde puedo cambiar el destino en visual web developer 2010 express. Ayuda, de lo contrario, tengo que crear un nuevo hilo –

+0

@paskester : No tengo instalado Visual Web Developer 2010 Express. ¿Está diciendo que no puede encontrar la pantalla anterior en las propiedades del proyecto o que no puede encontrar las propiedades del proyecto? tself? – Hemant

+0

Esto resolvió mi problema. –

-6

Añadir la siguiente referencia a su proyecto

System.ServiceModel.Web.dll 

Si usted no es capaz de encontrar en System.ServiceModel.Web - 'Agregar referencia' haga clic en Nombre del componente para ordenar la lista.

+1

Asker ya dijo en su pregunta que intentó agregar una referencia pero no pudo encontrarla. – Sean

4

Uso Visual Web Developer y estoy enfrentando el mismo problema. Mi proyecto ya está configurado para .Net 4.0 Framework. La solución para mi caso es la adición referencia a mi mi proyecto por:

haga clic derecho sobre Referencias, elija Agregar referencia y encontrar System.ServiceModel.Web bajo .Net Tab

+0

Esta es la solución que funcionó para mí en Visual Studio 2015. Target Framework fue 4.5.2 – Mathter

+0

Esto funcionó para mí en VS 2015, con orientación .net 4.5. Ninguna otra solución funcionó para mí. –

9

favor, mire la siguiente carpeta para System.ServiceModel.Web.dll

C: \ archivos de programa \ Referencia Asambleas \ Microsoft \ Framework.NETFramework \ v4.0 \

+0

Realmente útil, y la siguiente ruta también funcionará. C: \ Archivos de programa \ Conjuntos de referencia \ Microsoft \ Framework \ .NETFramework \ v3.5 –

+0

Casi nunca es la respuesta correcta. Si tiene que navegar manualmente a 'C: \ Program Files \ Reference Assemblies \', tiene algo mal configurado en su proyecto y necesita arreglarlo en su lugar. –

-1

puede encontrar la configuración con los pasos siguientes.

  1. Haga clic derecho proyecto en el Explorador de soluciones

  2. Elige Propiedades

  3. Elija Compilar TAB a la izquierda

  4. Al final de la página de compilación clic avanzada Opción de compilación * s Botón, esto abrirá t que un * VANZADO configuración del compilador

  5. El último control es un menú desplegable de la lectura "marco de destino (todas las configuraciones)

3

un chequeo de las propiedades del proyecto y en la ficha de solicitud asegurarse de que tiene seleccionó el ".NET FRAMEWORK" completo y no el ".NET FRAMEWORK CLIENT PROFILE" en el combo de marco de destino.