Pregunta

¿Existe la posibilidad de incluir el año en curso a través de DateTime.now.Year en el archivo ensamblableinfo.cs?

Yo he tratado:

[assembly: AssemblyCopyright("Copyright " + DateTime.Now.Year)]

Pero parece que el argumento solo puede ser una expresión constante.

¿Fue útil?

Solución

Como se ha dicho, no puede poner valores en atributos que no son constantes. DateTime.Now no es un valor constante y, por lo tanto, no se puede usar en un atributo.

Si quería especialmente este comportamiento, puede agregar un paso de script un paso previo a la compilación que inserta la fecha en los archivos.

Personalmente, dada la tarifa a la que cambia el año, sería el tiempo mal dedicado a crear una tarea autónoma para hacer esto. Tengo numerosos proyectos que tienen "2009" en su información de asamblea. Tengo una tarea en mi lista para completar en el Año Nuevo, para ejecutar una herramienta Regex para encontrar y reemplazar todas las instancias de "2009" con "2010" en los archivos AssemblyInfo.cs.

Sostengo que esto es mucho menos trabajo que la integración en su proceso de construcción.

Otros consejos

Esto se puede automatizar, pero deberá usar un método que manipule el archivo ensamblableinfo.cs previo a la construcción.

¿Deberías estar haciendo esto?

Un término de derechos de autor no se reinicia cuando reconstruye su código. Si los derechos de autor son actualmente 2009, debe permanecer en 2009 independientemente del año en curso, a menos que realice cambios significativos en el código* en un año posterior.

*Para el valor de 'significativo', debe consultar a un abogado, no a un desarrollador de software.

Esto no es posible porque en .NET los atributos pueden contener solo expresiones constantes. Puede usar un paso de compilación antes que modifique el archivo e inserta el año actual.

Use @ {0} Microsoft en el archivo ensamblableinfo.cs y use string.format en el lado del servidor para reemplazar {0} con el valor del año actual.

Es posible usar archivos de plantilla. Eche un vistazo a mi respuesta en el siguiente hilo

Mostrar dinámicamente el año actual en la información de ensamblaje

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top