I have object Project in my entity. I create project by:
public static void Add(Project project)
{
var context = new Entities();
context.AddToProjects(project);
context.SaveChanges();
}
Next I get this object:
public static Project GetProjectById(int idProject)
{
var context = new Entities();
return context.Projects.Where(p => p.IDProject == idProject).First();
}
And this two methods work fine.
But, when I want to save edited task by:
public static void SaveProject(Project project)
{
var context = new Entities();
project.EntityKey = new EntityKey("Entities.Projects", "IDProject", project.IDProject);
context.Attach(project);
context.SaveChanges();
}
method exectues with no exceptions. But in database nothing changes. What I must to change ?
This is my enity:
[EdmEntityTypeAttribute(NamespaceName="GWDModel", Name="Project")]
[Serializable()]
[DataContractAttribute(IsReference=true)]
public partial class Project : EntityObject
{
#region Factory Method
/// <summary>
/// Create a new Project object.
/// </summary>
/// <param name="iDProject">Initial value of the IDProject property.</param>
/// <param name="name">Initial value of the Name property.</param>
/// <param name="expectedCost">Initial value of the ExpectedCost property.</param>
/// <param name="status">Initial value of the Status property.</param>
public static Project CreateProject(global::System.Int32 iDProject, global::System.String name, global::System.Decimal expectedCost, StatusOfProjectWrapper status)
{
Project project = new Project();
project.IDProject = iDProject;
project.Name = name;
project.ExpectedCost = expectedCost;
project.Status = StructuralObject.VerifyComplexObjectIsNotNull(status, "Status");
return project;
}
#endregion
#region Primitive Properties
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
[DataMemberAttribute()]
public global::System.Int32 IDProject
{
get
{
return _IDProject;
}
set
{
if (_IDProject != value)
{
OnIDProjectChanging(value);
ReportPropertyChanging("IDProject");
_IDProject = StructuralObject.SetValidValue(value);
ReportPropertyChanged("IDProject");
OnIDProjectChanged();
}
}
}
private global::System.Int32 _IDProject;
partial void OnIDProjectChanging(global::System.Int32 value);
partial void OnIDProjectChanged();
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
[DataMemberAttribute()]
public global::System.String Name
{
get
{
return _Name;
}
set
{
OnNameChanging(value);
ReportPropertyChanging("Name");
_Name = StructuralObject.SetValidValue(value, false);
ReportPropertyChanged("Name");
OnNameChanged();
}
}
private global::System.String _Name;
partial void OnNameChanging(global::System.String value);
partial void OnNameChanged();
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
[DataMemberAttribute()]
public global::System.Decimal ExpectedCost
{
get
{
return _ExpectedCost;
}
set
{
OnExpectedCostChanging(value);
ReportPropertyChanging("ExpectedCost");
_ExpectedCost = StructuralObject.SetValidValue(value);
ReportPropertyChanged("ExpectedCost");
OnExpectedCostChanged();
}
}
private global::System.Decimal _ExpectedCost;
partial void OnExpectedCostChanging(global::System.Decimal value);
partial void OnExpectedCostChanged();
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
[DataMemberAttribute()]
public Nullable<global::System.DateTime> PlannedStart
{
get
{
return _PlannedStart;
}
set
{
OnPlannedStartChanging(value);
ReportPropertyChanging("PlannedStart");
_PlannedStart = StructuralObject.SetValidValue(value);
ReportPropertyChanged("PlannedStart");
OnPlannedStartChanged();
}
}
private Nullable<global::System.DateTime> _PlannedStart;
partial void OnPlannedStartChanging(Nullable<global::System.DateTime> value);
partial void OnPlannedStartChanged();
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
[DataMemberAttribute()]
public Nullable<global::System.DateTime> PlannedEnd
{
get
{
return _PlannedEnd;
}
set
{
OnPlannedEndChanging(value);
ReportPropertyChanging("PlannedEnd");
_PlannedEnd = StructuralObject.SetValidValue(value);
ReportPropertyChanged("PlannedEnd");
OnPlannedEndChanged();
}
}
private Nullable<global::System.DateTime> _PlannedEnd;
partial void OnPlannedEndChanging(Nullable<global::System.DateTime> value);
partial void OnPlannedEndChanged();
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
[DataMemberAttribute()]
public Nullable<global::System.DateTime> DateOfStart
{
get
{
return _DateOfStart;
}
set
{
OnDateOfStartChanging(value);
ReportPropertyChanging("DateOfStart");
_DateOfStart = StructuralObject.SetValidValue(value);
ReportPropertyChanged("DateOfStart");
OnDateOfStartChanged();
}
}
private Nullable<global::System.DateTime> _DateOfStart;
partial void OnDateOfStartChanging(Nullable<global::System.DateTime> value);
partial void OnDateOfStartChanged();
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
[DataMemberAttribute()]
public Nullable<global::System.DateTime> DateOfEnd
{
get
{
return _DateOfEnd;
}
set
{
OnDateOfEndChanging(value);
ReportPropertyChanging("DateOfEnd");
_DateOfEnd = StructuralObject.SetValidValue(value);
ReportPropertyChanged("DateOfEnd");
OnDateOfEndChanged();
}
}
private Nullable<global::System.DateTime> _DateOfEnd;
partial void OnDateOfEndChanging(Nullable<global::System.DateTime> value);
partial void OnDateOfEndChanged();
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
[DataMemberAttribute()]
public Nullable<global::System.Decimal> CurrentCost
{
get
{
return _CurrentCost;
}
set
{
OnCurrentCostChanging(value);
ReportPropertyChanging("CurrentCost");
_CurrentCost = StructuralObject.SetValidValue(value);
ReportPropertyChanged("CurrentCost");
OnCurrentCostChanged();
}
}
private Nullable<global::System.Decimal> _CurrentCost;
partial void OnCurrentCostChanging(Nullable<global::System.Decimal> value);
partial void OnCurrentCostChanged();
#endregion
#region Complex Properties
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[EdmComplexPropertyAttribute()]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
[XmlElement(IsNullable=true)]
[SoapElement(IsNullable=true)]
[DataMemberAttribute()]
public StatusOfProjectWrapper Status
{
get
{
_Status = GetValidValue(_Status, "Status", false, _StatusInitialized);
_StatusInitialized = true;
return _Status;
}
set
{
OnStatusChanging(value);
ReportPropertyChanging("Status");
_Status = SetValidValue(_Status, value, "Status");
_StatusInitialized = true;
ReportPropertyChanged("Status");
OnStatusChanged();
}
}
private StatusOfProjectWrapper _Status;
private bool _StatusInitialized;
partial void OnStatusChanging(StatusOfProjectWrapper value);
partial void OnStatusChanged();
#endregion
#region Navigation Properties
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[XmlIgnoreAttribute()]
[SoapIgnoreAttribute()]
[DataMemberAttribute()]
[EdmRelationshipNavigationPropertyAttribute("GWDModel", "FK_ProjectChanges_Projects", "ProjectChanges")]
public EntityCollection<ProjectChanx> ProjectChanges
{
get
{
return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<ProjectChanx>("GWDModel.FK_ProjectChanges_Projects", "ProjectChanges");
}
set
{
if ((value != null))
{
((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<ProjectChanx>("GWDModel.FK_ProjectChanges_Projects", "ProjectChanges", value);
}
}
}
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[XmlIgnoreAttribute()]
[SoapIgnoreAttribute()]
[DataMemberAttribute()]
[EdmRelationshipNavigationPropertyAttribute("GWDModel", "ProjectManagers", "Users")]
public EntityCollection<User> Users
{
get
{
return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<User>("GWDModel.ProjectManagers", "Users");
}
set
{
if ((value != null))
{
((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<User>("GWDModel.ProjectManagers", "Users", value);
}
}
}
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[XmlIgnoreAttribute()]
[SoapIgnoreAttribute()]
[DataMemberAttribute()]
[EdmRelationshipNavigationPropertyAttribute("GWDModel", "FK_Milestones_Projects", "Milestone")]
public EntityCollection<Milestone> Milestones
{
get
{
return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<Milestone>("GWDModel.FK_Milestones_Projects", "Milestone");
}
set
{
if ((value != null))
{
((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<Milestone>("GWDModel.FK_Milestones_Projects", "Milestone", value);
}
}
}
#endregion
}