Search code examples
codefluent

Unable to remove date/time stamps on generated files


I am unable to remove the date/time stamps from the generated files.

The problem is, when I'm editing the .cfp file, I'll set the Production Flags to "Overwrite, RemoveDates". But soon as I save the file, the Production Flags automatically get re-written as "Default, RemoveDates". This happens at both the Producer and Project Level.

If I use the projects advanced properties to set the flags through the GUI, than it sets the Productions Flags to "Default, RemoveDates". Also I don't have the same flag options as in the screenshot at

http://blog.codefluententities.com/2013/04/22/remove-the-current-date-and-time-to-generated-files/

The screenshot has the following checked:
1. Remove Diffs: Remove Dates
2. Remove Dates

None of my options match those in the screenshot. The only one that appears similar is:

  1. Remove Diffs <--- Note that the one in the screen shot has Remove Dates on the same line

Below is the model which was created using version/build 1.0.61214.805 of Codefluent Entities

<cf:project defaultNamespace="DemoRemoveDates" xmlns:cf="http://www.softfluent.com/codefluent/2005/1" xmlns:cfx="http://www.softfluent.com/codefluent/modeler/2008/1" xmlns:cfps="http://www.softfluent.com/codefluent/producers.sqlserver/2005/1" xmlns:cfom="http://www.softfluent.com/codefluent/producers.model/2005/1" xmlns:cfasp="http://www.softfluent.com/codefluent/producers.aspnet/2011/1" defaultConnectionString="Database=DemoRemoveDates;Server=.\SQLExpress;Integrated Security=true" defaultProducerProductionFlags="Default, RemoveDates" createDefaultMethodForms="true" createDefaultApplication="false" createDefaultHints="false">
  <cf:import path="Default.Surface.cfp" />
  <cf:producer enabled="false" productionFlags="None" name="SQL Server Producer" typeName="CodeFluent.Producers.SqlServer.SqlServerProducer, CodeFluent.Producers.SqlServer">
    <cf:configuration connectionString="Database=DemoRemoveDates;Server=.\SQLExpress;Integrated Security=true" produceViews="true" targetVersion="Sql2008" targetDirectory="..\DemoRemoveDates.Persistence" cfx:targetProjectLayout="UpdateItems, DontRemove" cfx:targetProject="..\DemoRemoveDates.Persistence\DemoRemoveDates.Persistence.dbproj" />
  </cf:producer>
  <cf:producer productionFlags="None" name="BOM Producer" typeName="CodeFluent.Producers.CodeDom.CodeDomProducer, CodeFluent.Producers.CodeDom, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1bb6d7cccf1045ec">
    <cf:configuration compileWithVisualStudio="true" targetDirectory="..\DemoRemoveDates" cfx:targetProject="..\DemoRemoveDates\DemoRemoveDates.csproj" cfx:targetProjectLayout="Update" />
  </cf:producer>
  <cf:producer enabled="false" productionFlags="None" name="ASP.NET WebForms Producer" typeName="CodeFluent.Producers.UI.AspNetProducer, CodeFluent.Producers.UI">
    <cf:configuration categoryPath="UI\AspNetWebForms" targetDirectory="..\DemoRemoveDates.Web" cfx:targetProject="..\DemoRemoveDates.Web\DemoRemoveDates.Web.csproj" />
  </cf:producer>
  <cf:entity name="Contact" namespace="DemoRemoveDates" categoryPath="/DemoRemoveDates">
    <cf:property name="Id" key="true" />
    <cf:property name="Name" />
  </cf:entity>
</cf:project>

Solution

  • This article is pretty old. Try using this value instead:

    productionFlags="Default, RemoveDates"
    

    Or use the modeler to set this:

    enter image description here

    For the BOM producer, you need to set one more flag:

    productionFlags="Default, Overwrite, RemoveDates"
    

    You can also define it at model stage:

    enter image description here