How to automatically populate CreatedDate and ModifiedDate?




I am learning ASP.NET Core MVC and my model is



```
namespace Joukyuu.Models
{
    public class Passage
    {
        public int PassageId { get; set; }
        public string Contents { get; set; }


        public DateTime CreatedDate { get; set; }
        public DateTime ModifiedDate { get; set; }
    }
}

```

The `Passage` table is used to save passages I wrote.


Scenario



* `Create` view just has one field `Contents` to input a passage. `CreatedDate` and `ModifiedDate` must be automatically set equal by the server (using UTC format).
* `Edit` view just has one field `Contents` to edit a passage. `ModifiedDate` must be automatically set by the server.


Question



What attributes I have to attach to the `CreatedDate` and `ModifiedDate` properties to make them automatically populated by the server based on the above scenario?
> 
> What attributes I have to attach to the CreatedDate and ModifiedDate properties to make them automatically populated by the server based on the above scenario?
> 
> 
> 


**Solution 1)**



```
namespace Joukyuu.Models
{
    public class Passage
    {
        public int PassageId { get; set; }
        public string Contents { get; set; }


        public DateTime CreatedDate { get; set; }
        public DateTime ModifiedDate { get; set; }

       public Passage()
       {          
         this.CreatedDate  = DateTime.UtcNow;
         this.ModifiedDate = DateTime.UtcNow;
       }
    }
}

```

and by edit you have to change/update it by your self!


**Solution 2)**


Custom attribute:



```
[SqlDefaultValue(DefaultValue = "getutcdate()")]
public DateTime CreatedDate { get; set; }

```

[Entity Framework 6 Code first Default value](https://stackoverflow.com/questions/19554050/entity-framework-6-code-first-default-value)


**Solution 3)**


with help of Computed:



```
[Required, DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public DateTime CreatedUtc { get; set; 


  "dbo.Products",
            c => new
                {
                    ProductId = c.Int(nullable: false, identity: true),
                    Name = c.String(),
                    CreatedUtc = c.DateTime(nullable: false, defaultValueSql: "GETUTCDATE()"),
                })
            .PrimaryKey(t => t.ProductId);

```

<https://andy.mehalick.com/2014/02/06/ef6-adding-a-created-datetime-column-automatically-with-code-first-migrations/>


**Solution 4)**
You can also do this with command interceptor by modifying manually the query.


**Solution 5)** 
Use Repository pattern to manage the data creation and set it by CreateNew 
This is my favour Solution!


<https://msdn.microsoft.com/en-us/library/ff649690.aspx>


**Solution 6)** 
just set it or get in in the UI or in your VM.







In **Entity Framework Core 1.0** easy:



```
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<Passage>()
        .Property(b => b.CreatedDate )
        .HasDefaultValueSql("getdate()");
}

```
> 
> i want to create ap application which generates popup alerts at the day of event ocurs as well as a day before the event will occur in a specific time interval as well.. events are stored in database and they are all date fields .. so i want to link those fields to create popups .. help me .
> 
> 
> 


In order to help you, you must first provide us with what you have achieved. We do not write code for you, simply correct and enlighten on mistakes. [@whyyouandi](/u/whyyouandi)

[image] whyyouandi:

i want to append another column of data.

you can add a column with [add data column] activity.

<https://www.uipath.com/activities-guide/add-data-column>

[image] whyyouandi:

and then edit the scrap date per row.

and to add a value to a target column, ch… and it's done exactly what you told it to: generate a field that's capable of holding an SQL DATE. Which means a field without a time.  

The correct way of indicating a timestamp using JPA is as follows:



```
   /**
     * Time/date of creation of an entity.
     */
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "CREATION_DATE")
    protected Date creationDate;

``` you should be able to set the element to not be visible on page load, and then on the conditional tab of the element, you should be able to construct a condition where parent group’s thing’s creation date < parent group’s thing’s modified date, this element is visible. and when i say “should be able… <http://code.djangoproject.com/wiki/CookBookNewformsAdminAndUser>


Involves implementing save methods on your ModelAdmin objects. 1) form controls use a list box for the names of the conference rooms;use datetimepicker for scheduling the reservation...set the format property to custom;set the customformat property to mm dd yyyy hh mm ssof course, will also need ok button2) dataset up the data file like this:room date time1st floor, 6/8/21, 14:00:002nd floor, 6/9/21, 10:00:003rd floor, 6/8/21, 13:30:00reads these records from the file to determine if there is a conflict.if the room is available at the requested time, writes the reservation tothe file (in append mode) and displays a message box saying the reservationis complete. otherwise display a message box saying the room is unavailableat that time. hi,we have no formal “copy file type and template” from environment test to prod.this is what i’ve done hundreds of times.assuming you created a new file type or copied an existing template. - do this same process in prod (or the other environment), ideally keep the same name and description - just keeps things clean.then update the tabs so the file separator and date formant is the same. if you created any external file template controls update this as well,finally, - in the file template details, i delete all records in the new prod, and then use the copy / past object to copy the details from test to prod. rather than analyzing to see what’s different in the details between test and prod, if we know test works, i would typically delete the details and copy object from test to prod.if you had any formula in test you can manually copy these as well. it’s a few steps, but it only takes a couple minutes. best regards,thomas [image] akanksha\_varshney:

(convert.tostring(date\_created\_hs.substring(0,10)).equals(convert.tostring(date\_created\_cchq.substring(0,10)))) or (date\_created\_hs <> “”)

hey,

try with the following one,

(convert.tostring(date\_created\_hs.substring(0,10).trim).equals(convert.tostring(date\_created… [this example](https://github.com/bpmn-io/bpmn-js-disable-collapsed-subprocess/blob/master/src/disabledcollapsedsubprocesspopupprovider.js#l33) is related to the replace menu, but it can easily mapped to the context pad provider.

so your getcontextpadentries can return a function like this

getcontextpadentries(element) {

/* ... */

return function(entries) {

// entries includes all already registered context pad entr… Hello Dmytro,


You will need to bind to the Custom Command, create arguments for the command execution, specify parameter values that will be used to execute the command in the Scheduled Task and then pass the arguments to the Arguments property of the action. Here is the code that will do the trick:



```
# Define actions and conditions for the task

$commandID = "{a7264a61-b77d-4386-a138-ec2557c5b3ba}" # Command ID
$commandDN = "CN=MyCommand,CN=Custom Commands,CN=Configuration Objects,CN=Adaxes Configuration,CN=Adaxes" # Command DN

# Create action set
$actionsAndConditions = $task.ConditionedActions.Create()
$actionsAndConditions.ConditionsLogicalOperation = "ADM_LOGICALOPERATION_AND"
$actionsAndConditions.SetInfo()

# Create execute Custom Command action
$action = $actionsAndConditions.Actions.CreateEx("adm-CustomCommandAction")
$action.ExecutionOptions = "ADM_ACTIONEXECUTIONOPTIONS_SYNC"

# Get action
$removeAction = $action.GetAction()

# Bind to Custom Command
$customCommand = $Context.BindToObjectByDN($commandDN)

# Specify command arguments
$arguments = $customCommand.CreateArguments()
$arguments.SetParameterValue("MyParameter", "MyValue") # Parameter value

# Configure the action
$removeAction.CustomCommandId = $commandID
$removeAction.Arguments = $arguments

# Save action
$action.SetAction($removeAction)
$action.SetInfo()
```

In the script, the $commandDN variable specifies the distinguished name (DN) of the Custom Command. For information on how to get the DN of a directory object, see <http://adaxes.com/sdk/?HowDoI.GetDnOfObject.html>.


For details, have a look at the following SDK article: <http://adaxes.com/sdk/?IAdmCustomCommandAction2.html>.