tfs - Problemas con la plantilla de compilación múltiple(archivos xaml) en el proyecto
build-process tfs2012 (3)
Usé el siguiente enfoque y funcionó muy bien. Todo lo que necesita reemplazarse es TfsBuild en dos ubicaciones en la primera línea del xaml sin procesar.
Desde el enlace:
1 Haga clic con el botón derecho en su Copia de DefaultTemplate.xaml en el Control de código fuente y seleccione Ver con ... para abrirlo en el Bloc de notas (también puede hacer clic derecho en la plantilla en VS y seleccionar ''Ver código'').
2 Luego, en el primer cambio de línea:
-
**x:Class="TfsBuild.Process"**
a**x:Class="YourProcessTemplateName.Process"**
-
**xmlns:this="clr-namespace:TfsBuild"**
a**xmlns:this="clr-namespace:YourProcessTemplateName"**
Estoy teniendo problemas con mi proyecto de construcción de TFS. Estoy siguiendo el ejemplo desde aquí en cuanto a la configuración del proyecto en VS.
Tengo un proyecto solo para las actividades personalizadas y un proyecto separado solo para las plantillas. El problema que tengo es que el proyecto de Plantillas solo puede contener un archivo xaml. Si copio y pego en el mismo proyecto, no se compilará. Obtuve el siguiente error:
Error 102 El elemento "obj / Debug / TfsBuild_Process_BeforeInitializeComponentHelper.txt" se especificó más de una vez en el parámetro "Recursos". Los elementos duplicados no son compatibles con el parámetro "Recursos".
Pero si lo elimino, se compilará muy bien. Todo funciona, lo que significa que se compilará si hago cola en una compilación.
También probé la solución sugerida aquí , pero no parece resolver mi problema.
Solución:
Cambiar el nombre del nombre del formulario en el explorador de soluciones.
Cambie el nombre de clase en el archivo .cs y Designer.cs.
Cambiar el constructor y el nombre del destructor (que es igual que el nombre de la clase)
Cambia el nombre del espacio de nombre (si es necesario).
Aquí está el enlace para descargar el proyecto.
No puedo entender por qué. ¡Cualquier ayuda es muy apreciada!
Me encontré con este problema y quería agregar la solución que encontré. Si comprueba las propiedades de los archivos XAML, cuando los vincula a su proyecto se les asigna una BuildAction de XamlAppDef. Cambiar esto a ''Contenido'' resolverá el error.
Para encontrar la pantalla de propiedades que necesita editar, simplemente resalte el archivo XAML en el Explorador de soluciones y presione F4 o haga clic con el botón derecho en el archivo y seleccione ''Propiedades'' en el menú contextual.
Espero que esto ayude.
No sé si todavía tienes este problema, pero también tuve el problema hoy. Encontré una resolución que (si todavía enfrenta el problema) puede ayudarlo a usted o a otros.
Cuando copia una plantilla de Proceso de compilación automáticamente obtiene la propiedad x: Clase establecida en TfsBuild.Process . Cuando tiene varias plantillas de proceso con el mismo valor, obtendrá este error al construir el proyecto.
<Activity mc:Ignorable="sads sap sap2010" x:Class="TfsBuild.Process" this:Process.BuildNumberFormat="$(BuildDefinitionName)_$(Date:yyyyMMdd)$(Rev:.r)" this:Process.AgentSettings="[New Microsoft.TeamFoundation.Build.Workflow.Activities.AgentSettings() With {.MaxWaitTime = New System.TimeSpan(4, 0, 0), .MaxExecutionTime = New System.TimeSpan(0, 0, 0), .TagComparison = Microsoft.TeamFoundation.Build.Workflow.Activities.TagComparison.MatchExactly}]" this:Process.Verbosity="[Microsoft.TeamFoundation.Build.Workflow.BuildVerbosity.Normal]" this:Process.OutputFullHistory="True" this:Process.OutputBranchOrigin="True" this:Process.OnlyOutputChangedFiles="True" this:Process.StartChangeset="0"......
Resolví el problema reemplazando TfsBuild.Process con otro nombre para cada plantilla (por ejemplo, TfsBuild.ProcessLabDefault ). Tenga en cuenta que también debe cambiar todas las instancias de esto: Proceso porque los dos están vinculados entre sí (por ejemplo, esto: ProcessLabDefault ).
<Activity mc:Ignorable="sads sap sap2010" x:Class="TfsBuild.MyProcess" this:MyProcess.BuildNumberFormat="$(BuildDefinitionName)_$(Date:yyyyMMdd)$(Rev:.r)" this:MyProcess.AgentSettings="[New Microsoft.TeamFoundation.Build.Workflow.Activities.AgentSettings() With {.MaxWaitTime = New System.TimeSpan(4, 0, 0), .MaxExecutionTime = New System.TimeSpan(0, 0, 0), .TagComparison = Microsoft.TeamFoundation.Build.Workflow.Activities.TagComparison.MatchExactly}]" this:MyProcess.Verbosity="[Microsoft.TeamFoundation.Build.Workflow.BuildVerbosity.Normal]" this:MyProcess.OutputFullHistory="True" this:MyProcess.OutputBranchOrigin="True" this:MyProcess.OnlyOutputChangedFiles="True" this:MyProcess.StartChangeset="0"......
No encontré la manera de cambiar esto usando la interfaz, Ver código y Buscar y reemplazar trabajos. Espero eso ayude.