Click here to Skip to main content
12,622,568 members (28,362 online)
Click here to Skip to main content
Articles » Database » Database » ADO.NET » Downloads

Stats

32.8K views
1.5K downloads
40 bookmarked
Posted

Implementing Undo/Redo feature for DbContext of Entity Framework

, 11 Oct 2012 CPOL
Undo Redo with DbContext of Entity Framework
UndoRedoPOC
ConsoleClient
bin
Debug
ConsoleClient.vshost.exe.manifest
obj
Debug
Properties
Lib.DataAccess
bin
Debug
Implementation
Interfaces
obj
Debug
Properties
Lib.Global
obj
Debug
Properties
Lib.Model
obj
Debug
Properties
LogicService
Global.asax
LogicService.csproj.user
obj
Debug
Properties
LogicService.Contract
LogicService.Contract.csproj.user
obj
Debug
Properties
packages
EntityFramework.5.0.0
Content
App.config.transform
Web.config.transform
EntityFramework.5.0.0.nupkg
lib
net40
net45
tools
EntityFramework.PS3.psd1
EntityFramework.psd1
EntityFramework.psm1
init.ps1
install.ps1
UndoRedoPOC.suo
UndoRedoPOC.v11.suo
ConsoleClient.exe
ConsoleClient.pdb
ConsoleClient.vshost.exe
ConsoleClient.vshost.exe.manifest
Lib.Model.dll
Lib.Model.pdb
LogicService.Contract.dll
LogicService.Contract.pdb
ConsoleClient.csprojResolveAssemblyReference.cache
ConsoleClient.exe
ConsoleClient.pdb
DesignTimeResolveAssemblyReferencesInput.cache
TempPE
EntityFramework.dll
Lib.DataAccess.dll
Lib.DataAccess.pdb
Lib.Global.dll
Lib.Global.pdb
Lib.Model.dll
Lib.Model.pdb
DesignTimeResolveAssemblyReferencesInput.cache
Lib.DataAccess.csprojResolveAssemblyReference.cache
Lib.DataAccess.dll
Lib.DataAccess.pdb
TempPE
bin
Debug
Lib.Global.dll
Lib.Global.pdb
DesignTimeResolveAssemblyReferencesInput.cache
Lib.Global.dll
Lib.Global.pdb
TempPE
bin
Debug
Lib.Model.dll
Lib.Model.pdb
DesignTimeResolveAssemblyReferencesInput.cache
Lib.Model.csprojResolveAssemblyReference.cache
Lib.Model.dll
Lib.Model.pdb
TempPE
Library
EntityFramework.dll
App_Data
bin
EntityFramework.dll
Lib.DataAccess.dll
Lib.DataAccess.pdb
Lib.Global.dll
Lib.Global.pdb
Lib.Model.dll
Lib.Model.pdb
LogicService.Contract.dll
LogicService.Contract.pdb
LogicService.dll
LogicService.pdb
Global.asax
LogicService.csproj.user
DesignTimeResolveAssemblyReferencesInput.cache
LogicService.csprojResolveAssemblyReference.cache
LogicService.dll
LogicService.pdb
TempPE
bin
Debug
Lib.Model.dll
Lib.Model.pdb
LogicService.Contract.dll
LogicService.Contract.pdb
LogicService.Contract.csproj.user
DesignTimeResolveAssemblyReferencesInput.cache
LogicService.Contract.csprojResolveAssemblyReference.cache
LogicService.Contract.dll
LogicService.Contract.pdb
TempPE
App.config.transform
Web.config.transform
EntityFramework.5.0.0.nupkg
EntityFramework.dll
EntityFramework.dll
EntityFramework.PowerShell.dll
EntityFramework.PowerShell.Utility.dll
EntityFramework.PS3.psd1
EntityFramework.psd1
EntityFramework.psm1
init.ps1
install.ps1
migrate.exe
UndoRedoPOC.suo
UndoRedoPOC.v11.suo
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProductVersion>
    </ProductVersion>
    <SchemaVersion>2.0</SchemaVersion>
    <ProjectGuid>{EFDED14A-52F7-46A7-A863-51DB5A198F44}</ProjectGuid>
    <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
    <OutputType>Library</OutputType>
    <AppDesignerFolder>Properties</AppDesignerFolder>
    <RootNamespace>LogicService</RootNamespace>
    <AssemblyName>LogicService</AssemblyName>
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
    <WcfConfigValidationEnabled>True</WcfConfigValidationEnabled>
    <UseIISExpress>true</UseIISExpress>
    <IISExpressSSLPort />
    <IISExpressAnonymousAuthentication />
    <IISExpressWindowsAuthentication />
    <IISExpressUseClassicPipelineMode />
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>bin\</OutputPath>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <DebugType>pdbonly</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\</OutputPath>
    <DefineConstants>TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <ItemGroup>
    <Reference Include="EntityFramework, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>..\Library\EntityFramework.dll</HintPath>
    </Reference>
    <Reference Include="Microsoft.CSharp" />
    <Reference Include="System.ComponentModel.Composition" />
    <Reference Include="System.Data.Entity" />
    <Reference Include="System.Web.DynamicData" />
    <Reference Include="System.Web.Entity" />
    <Reference Include="System.Web.ApplicationServices" />
    <Reference Include="System" />
    <Reference Include="System.Configuration" />
    <Reference Include="System.Core" />
    <Reference Include="System.Data" />
    <Reference Include="System.Drawing" />
    <Reference Include="System.EnterpriseServices" />
    <Reference Include="System.Runtime.Serialization" />
    <Reference Include="System.ServiceModel" />
    <Reference Include="System.ServiceModel.Web" />
    <Reference Include="System.Web" />
    <Reference Include="System.Web.Extensions" />
    <Reference Include="System.Web.Services" />
    <Reference Include="System.Xml" />
    <Reference Include="System.Xml.Linq" />
  </ItemGroup>
  <ItemGroup>
    <Content Include="Global.asax" />
    <Content Include="Web.config" />
  </ItemGroup>
  <ItemGroup>
    <Compile Include="Global.asax.cs">
      <DependentUpon>Global.asax</DependentUpon>
    </Compile>
    <Compile Include="LogicService.cs" />
    <Compile Include="Properties\AssemblyInfo.cs" />
  </ItemGroup>
  <ItemGroup>
    <Folder Include="App_Data\" />
  </ItemGroup>
  <ItemGroup>
    <None Include="Web.Debug.config">
      <DependentUpon>Web.config</DependentUpon>
    </None>
    <None Include="Web.Release.config">
      <DependentUpon>Web.config</DependentUpon>
    </None>
  </ItemGroup>
  <ItemGroup>
    <ProjectReference Include="..\Lib.DataAccess\Lib.DataAccess.csproj">
      <Project>{859ca733-65a9-4635-8007-b9b8b9b86244}</Project>
      <Name>Lib.DataAccess</Name>
    </ProjectReference>
    <ProjectReference Include="..\Lib.Global\Lib.Global.csproj">
      <Project>{2d485e3b-10ce-497e-aced-fa41fff90542}</Project>
      <Name>Lib.Global</Name>
    </ProjectReference>
    <ProjectReference Include="..\Lib.Model\Lib.Model.csproj">
      <Project>{94da143c-bd13-437c-ae65-462306e63d5d}</Project>
      <Name>Lib.Model</Name>
    </ProjectReference>
    <ProjectReference Include="..\LogicService.Contract\LogicService.Contract.csproj">
      <Project>{15b3e0d2-6217-493a-a690-158c497f5318}</Project>
      <Name>LogicService.Contract</Name>
    </ProjectReference>
  </ItemGroup>
  <PropertyGroup>
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
  </PropertyGroup>
  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
  <Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
  <ProjectExtensions>
    <VisualStudio>
      <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
        <WebProjectProperties>
          <UseIIS>False</UseIIS>
          <AutoAssignPort>False</AutoAssignPort>
          <DevelopmentServerPort>3432</DevelopmentServerPort>
          <DevelopmentServerVPath>/</DevelopmentServerVPath>
          <IISUrl>http://localhost:3176/</IISUrl>
          <NTLMAuthentication>False</NTLMAuthentication>
          <UseCustomServer>False</UseCustomServer>
          <CustomServerUrl>
          </CustomServerUrl>
          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
        </WebProjectProperties>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
       Other similar extension points exist, see Microsoft.Common.targets.
  <Target Name="BeforeBuild">
  </Target>
  <Target Name="AfterBuild">
  </Target>
  -->
</Project>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Morshed Anwar
Team Leader PracticePRO Software Systems Inc
United States United States
"In my childhood, my uncle has shown me how to see the cloud in a close look and I understand that one can draw some elements of the Earth in the sky-canvas if he/she wants to. After that the cloud becomes closer to me and It teaches me one thing that, a deeper-look to something will give you some clues to draw your imagination. You can able to see that one which you have build-up in your mind.

Years past, I have started my career as a software engineer and has been looking for passion in my coding and development which I should be to enjoy my profession and has started asking myself- 'am I doing any engineering here?!' Is my code becoming that thing which I have designed in my mind? So to find that answer I have tried that old solution here... I have decided to come closer to my code and start analyzing them. And it is really working for me and at least it gives me the confidence that I can build something that I really want to. I can draw my thinking there through my code and can build-up my vision that I have designed in my mind. It also helps me to think out of the box, solve each problems by making blocks and make me careful on each steps." ----- says Morshed Anwar.

• Morshed's Technical Blog site: http://morshedanwar.wordpress.com/

• Morshed's Technical articles those are published in Codeproject site: http://www.codeproject.com/script/Articles/MemberArticles.aspx?amid=2992452

• Morshed's Linkedin profile: http://www.linkedin.com/in/morshedanwar

• Morshed's Facebook Profile : http://www.facebook.com/morshed.pulok

Beside all these Morshed like to do - photography and music. Here is Morshed's Flickr photos : http://www.flickr.com/photos/morshed_anwar/

You may also be interested in...

| Advertise | Privacy | Terms of Use | Mobile
Web01 | 2.8.161128.1 | Last Updated 11 Oct 2012
Article Copyright 2012 by Morshed Anwar
Everything else Copyright © CodeProject, 1999-2016
Layout: fixed | fluid