2011-09-29 10 views
8

Tengo mono 2.10 instalado que se dice que es compatible con 4.0 tengo un sitio en ejecución, un simple hello world que está construido (me desarrollo en un cuadro de Windows con vs 2010 y luego cargo a un linux box) con 3.5.Cómo apuntar .NET 4.0 bajo mono

Quiero poner el sitio en 4.0. Lo cambié en el estudio visual y en el cuadro de Windows funciona. en linux tengo el error

atributo

no reconocido 'targetFramework'

SO, que pasos son necesarios para cambiar el destino entre 3,5 y 4,0?

EDITAR: No estoy usando monodesarrollo.

Estoy creando el sitio en una máquina de Windows con Visual Studio y luego copiando toda la carpeta del sitio web en el cuadro de Linux. Después de eso, abro la URL del sitio y eso es todo.

¿Cuándo debería ejecutar el compilador dmcs? ¿AFAIK el sitio se compila automáticamente cuando se ejecuta por primera vez?

+2

Usa el compilador 'dmcs'. –

+0

Parece que está implícitamente incluido el monodesarrollo en su pregunta. ¿Qué versión de MonoDevelop tienes? – IanNorton

+1

Exactamente. En tal caso, considere usar xbuild. –

Respuesta

5

Aunque es correcto que use dmcs para compilar aplicaciones .NET 4 en Mono, no creo que este sea su problema. Me parece que está intentando servir una aplicación compilada de ASP.NET en Linux.

Es probable que su problema sea que necesita llamar a mod-mono-server4 desde Apache, pero es probable que ejecute mod-mono-server2. Usted debe tener una línea en su httpd.conf o mod-mono.conf que se parece a lo siguiente:

MonoServerPath default /usr/bin/mod-mono-server4 

Salida this page, específicamente la sección de solución de problemas. Las instrucciones son un poco anticuadas, así que tienes que cambiar el dígito '2' a '4', pero es una buena explicación de lo que está sucediendo. This page también podría ayudarlo a configurar la configuración correcta.

3

Usando mono 2.10, o ejecuta dmcs o gmcs -sdk:4 al compilar su código.