diff --git a/HomeCinema.Data/Abstract/IEntityBaseRepository.cs b/HomeCinema.Data/Abstract/IEntityBaseRepository.cs new file mode 100644 index 00000000..c423b8e6 --- /dev/null +++ b/HomeCinema.Data/Abstract/IEntityBaseRepository.cs @@ -0,0 +1,34 @@ +using HomeCinema.Entities; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Text; +using System.Threading.Tasks; + +namespace HomeCinema.Data.Abstract +{ + //public interface IEntityBaseRepository { } + + public interface IEntityBaseRepository where T : class, IEntityBase, new() + { + IQueryable AllIncluding(params Expression>[] includeProperties); + IQueryable All { get; } + IQueryable GetAll(); + int Count(); + T GetSingle(int id); + IQueryable FindBy(Expression> predicate); + T GetSingle(Expression> predicate, params Expression>[] includeProperties); + T GetSingle(Expression> predicate); + T GetById(object id); + + bool Any(Expression> predicate); + void Add(T entity); + void Delete(T entity); + void Delete(IEnumerable entities); + + void Edit(T entity); + void DeleteWhere(Expression> predicate); + void Commit(); + } +} diff --git a/HomeCinema.Data/Abstract/IRepositories.cs b/HomeCinema.Data/Abstract/IRepositories.cs new file mode 100644 index 00000000..224c3ff9 --- /dev/null +++ b/HomeCinema.Data/Abstract/IRepositories.cs @@ -0,0 +1,15 @@ +using HomeCinema.Entities; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace HomeCinema.Data.Abstract +{ + public interface ICustomerRepository : IEntityBaseRepository { } + + //public interface IUserRepository : IEntityBaseRepository { } + + //public interface IAttendeeRepository : IEntityBaseRepository { } +} diff --git a/HomeCinema.Data/Configurations/ActivityLogConfiguration.cs b/HomeCinema.Data/Configurations/ActivityLogConfiguration.cs new file mode 100644 index 00000000..75d16df8 --- /dev/null +++ b/HomeCinema.Data/Configurations/ActivityLogConfiguration.cs @@ -0,0 +1,18 @@ +using HomeCinema.Entities; +using System; +using System.Collections.Generic; +using System.Data.Entity.ModelConfiguration; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace HomeCinema.Data.Configurations +{ + public class ActivityLogConfiguration : EntityBaseConfiguration + { + public ActivityLogConfiguration() + { + //Property(g => g.).IsRequired().HasMaxLength(50); + } + } +} diff --git a/HomeCinema.Data/Extensions/CustomerExtensions.cs b/HomeCinema.Data/Extensions/CustomerExtensions.cs index 454e1962..0720d056 100644 --- a/HomeCinema.Data/Extensions/CustomerExtensions.cs +++ b/HomeCinema.Data/Extensions/CustomerExtensions.cs @@ -1,4 +1,5 @@ using HomeCinema.Data.Repositories; +using HomeCinema.Data.Abstract; using HomeCinema.Entities; using System; using System.Collections.Generic; diff --git a/HomeCinema.Data/Extensions/StockExtensions.cs b/HomeCinema.Data/Extensions/StockExtensions.cs index e3c4d630..a7bbdf3c 100644 --- a/HomeCinema.Data/Extensions/StockExtensions.cs +++ b/HomeCinema.Data/Extensions/StockExtensions.cs @@ -1,31 +1,31 @@ -using HomeCinema.Data.Repositories; -using HomeCinema.Entities; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace HomeCinema.Data.Extensions -{ - public static class StockExtensions - { - public static IEnumerable GetAvailableItems(this IEntityBaseRepository stocksRepository, int movieId) - { - IEnumerable _availableItems; - - _availableItems = stocksRepository.GetAll().Where(s => s.MovieId == movieId && s.IsAvailable); - - return _availableItems; - } - - //public static IEnumerable GetAllItems(this IEntityBaseRepository stocksRepository, int movieId) - //{ - // IEnumerable _allItems; - - // _allItems = stocksRepository.GetAll().Where(s => s.MovieId == movieId); - - // return _allItems; - //} - } -} +using HomeCinema.Data.Abstract; +using HomeCinema.Entities; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace HomeCinema.Data.Extensions +{ + public static class StockExtensions + { + public static IEnumerable GetAvailableItems(this IEntityBaseRepository stocksRepository, int movieId) + { + IEnumerable _availableItems; + + _availableItems = stocksRepository.GetAll().Where(s => s.MovieId == movieId && s.IsAvailable); + + return _availableItems; + } + + //public static IEnumerable GetAllItems(this IEntityBaseRepository stocksRepository, int movieId) + //{ + // IEnumerable _allItems; + + // _allItems = stocksRepository.GetAll().Where(s => s.MovieId == movieId); + + // return _allItems; + //} + } +} diff --git a/HomeCinema.Data/Extensions/UserExtensions.cs b/HomeCinema.Data/Extensions/UserExtensions.cs index bdf1d875..0493c090 100644 --- a/HomeCinema.Data/Extensions/UserExtensions.cs +++ b/HomeCinema.Data/Extensions/UserExtensions.cs @@ -1,18 +1,19 @@ -using HomeCinema.Data.Repositories; -using HomeCinema.Entities; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace HomeCinema.Data.Extensions -{ - public static class UserExtensions - { - public static User GetSingleByUsername(this IEntityBaseRepository userRepository, string username) - { - return userRepository.GetAll().FirstOrDefault(x => x.Username == username); - } - } -} +using HomeCinema.Data.Abstract; +using HomeCinema.Data.Repositories; +using HomeCinema.Entities; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace HomeCinema.Data.Extensions +{ + public static class UserExtensions + { + public static User GetSingleByUsername(this IEntityBaseRepository userRepository, string username) + { + return userRepository.GetAll().FirstOrDefault(x => x.Username == username); + } + } +} diff --git a/HomeCinema.Data/Helper/EntityHelperMethods.cs b/HomeCinema.Data/Helper/EntityHelperMethods.cs new file mode 100644 index 00000000..fe6c56a8 --- /dev/null +++ b/HomeCinema.Data/Helper/EntityHelperMethods.cs @@ -0,0 +1,82 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Reflection; +using System.Text; +using System.Threading.Tasks; + +namespace HomeCinema.Data.Helper +{ + public static class EntityHelperMethods + { + public static IQueryable WhereAllPropertiesOfSimilarTypeAreEqual(this IQueryable query, TProperty value) + { + var param = Expression.Parameter(typeof(TEntity)); + + var predicate = PredicateBuilder.False(); + + foreach (var fieldName in GetEntityFieldsToCompareTo()) + { + var predicateToAdd = Expression.Lambda>( + Expression.Equal( + Expression.PropertyOrField(param, fieldName.Key), + Expression.Constant(value)), param); + + predicate = predicate.Or(predicateToAdd); + } + + return query.Where(predicate); + } + + public static IQueryable WhereAllPropertiesOfSimilarTypeContains(this IQueryable query, TProperty value) + { + var param = Expression.Parameter(typeof(TEntity)); + var predicate = PredicateBuilder.False(); + MethodInfo contains = typeof(string).GetMethod("Contains"); + foreach (var fieldName in GetEntityFieldsToCompareTo()) + { + if (fieldName.Value.Equals(typeof(string).Name)) + { + var predicateToAdd = Expression.Lambda>( + Expression.Call(Expression.PropertyOrField(param, fieldName.Key), + contains, + Expression.Constant(value)), param); + predicate = predicate.Or(predicateToAdd); + } + else + { + var predicateToAdd = Expression.Lambda>( + Expression.Equal( + Expression.PropertyOrField(param, fieldName.Key), + Expression.Constant(value)), param); + predicate = predicate.Or(predicateToAdd); + } + + } + + return query.Where(predicate); + } + + + // TODO: You'll need to find out what fields are actually ones you would want to compare on. + // This might involve stripping out properties marked with [NotMapped] attributes, for + // for example. + private static IDictionary GetEntityFieldsToCompareTo() + { + Type entityType = typeof(TEntity); + Type propertyType = typeof(TProperty); + + var fields = entityType.GetFields() + .Where(f => f.FieldType == propertyType) + .ToDictionary(f => f.Name, f => f.FieldType.Name); + + var properties = entityType.GetProperties() + .Where(p => p.PropertyType == propertyType) + .ToDictionary(p => p.Name, p => p.PropertyType.Name); + //return null; + Dictionary d3 = fields.Concat(properties).ToDictionary(e => e.Key, e => e.Value); + return d3; + } + } +} diff --git a/HomeCinema.Data/Helper/PredicateBuilder.cs b/HomeCinema.Data/Helper/PredicateBuilder.cs new file mode 100644 index 00000000..c32f8831 --- /dev/null +++ b/HomeCinema.Data/Helper/PredicateBuilder.cs @@ -0,0 +1,96 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Text; +using System.Threading.Tasks; + +namespace HomeCinema.Data.Helper +{ + public static class PredicateBuilder + { + /// + /// Creates a predicate that evaluates to true. + /// + public static Expression> True() { return param => true; } + + /// + /// Creates a predicate that evaluates to false. + /// + public static Expression> False() { return param => false; } + + /// + /// Creates a predicate expression from the specified lambda expression. + /// + public static Expression> Create(Expression> predicate) { return predicate; } + + /// + /// Combines the first predicate with the second using the logical "and". + /// + public static Expression> And(this Expression> first, Expression> second) + { + return first.Compose(second, Expression.AndAlso); + } + + /// + /// Combines the first predicate with the second using the logical "or". + /// + public static Expression> Or(this Expression> first, Expression> second) + { + return first.Compose(second, Expression.OrElse); + } + + /// + /// Negates the predicate. + /// + public static Expression> Not(this Expression> expression) + { + var negated = Expression.Not(expression.Body); + return Expression.Lambda>(negated, expression.Parameters); + } + + /// + /// Combines the first expression with the second using the specified merge function. + /// + static Expression Compose(this Expression first, Expression second, Func merge) + { + // zip parameters (map from parameters of second to parameters of first) + var map = first.Parameters + .Select((f, i) => new { f, s = second.Parameters[i] }) + .ToDictionary(p => p.s, p => p.f); + + // replace parameters in the second lambda expression with the parameters in the first + var secondBody = ParameterRebinder.ReplaceParameters(map, second.Body); + + // create a merged lambda expression with parameters from the first expression + return Expression.Lambda(merge(first.Body, secondBody), first.Parameters); + } + + class ParameterRebinder : ExpressionVisitor + { + readonly Dictionary map; + + ParameterRebinder(Dictionary map) + { + this.map = map ?? new Dictionary(); + } + + public static Expression ReplaceParameters(Dictionary map, Expression exp) + { + return new ParameterRebinder(map).Visit(exp); + } + + protected override Expression VisitParameter(ParameterExpression p) + { + ParameterExpression replacement; + + if (map.TryGetValue(p, out replacement)) + { + p = replacement; + } + + return base.VisitParameter(p); + } + } + } +} diff --git a/HomeCinema.Data/HomeCinema.Data.csproj b/HomeCinema.Data/HomeCinema.Data.csproj index ed07a013..479f69a2 100644 --- a/HomeCinema.Data/HomeCinema.Data.csproj +++ b/HomeCinema.Data/HomeCinema.Data.csproj @@ -1,110 +1,136 @@ - - - - - Debug - AnyCPU - {FDB8609C-3FA4-425C-BA71-4A71A7C43EC6} - Library - Properties - HomeCinema.Data - HomeCinema.Data - v4.5 - 512 - ..\ - true - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll - - - ..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll - - - ..\packages\FluentValidation.5.6.2.0\lib\Net45\FluentValidation.dll - - - ..\packages\MockData.0.0.6\lib\net40\MockData.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {3e8bb046-05bd-4d27-94a7-c13ad4f3e192} - HomeCinema.Entities - - - - - - - - - - - This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - + + + + + Debug + AnyCPU + {FDB8609C-3FA4-425C-BA71-4A71A7C43EC6} + Library + Properties + HomeCinema.Data + HomeCinema.Data + v4.5 + 512 + ..\ + true + SAK + SAK + SAK + SAK + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll + + + ..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll + + + ..\packages\FluentValidation.5.6.2.0\lib\Net45\FluentValidation.dll + + + ..\packages\MockData.0.0.6\lib\net40\MockData.dll + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 201703231700563_initial.cs + + + + 201703241203435_logAuthSetting.cs + + + + + + + + + + + + + + + {3e8bb046-05bd-4d27-94a7-c13ad4f3e192} + HomeCinema.Entities + + + + + + + + + 201703231700563_initial.cs + + + 201703241203435_logAuthSetting.cs + + + + + + + + This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + --> \ No newline at end of file diff --git a/HomeCinema.Data/HomeCinema.Data.csproj.user b/HomeCinema.Data/HomeCinema.Data.csproj.user new file mode 100644 index 00000000..e4826574 --- /dev/null +++ b/HomeCinema.Data/HomeCinema.Data.csproj.user @@ -0,0 +1,6 @@ + + + + ShowAllFiles + + \ No newline at end of file diff --git a/HomeCinema.Data/HomeCinema.Data.csproj.vspscc b/HomeCinema.Data/HomeCinema.Data.csproj.vspscc new file mode 100644 index 00000000..feffdeca --- /dev/null +++ b/HomeCinema.Data/HomeCinema.Data.csproj.vspscc @@ -0,0 +1,10 @@ +"" +{ +"FILE_VERSION" = "9237" +"ENLISTMENT_CHOICE" = "NEVER" +"PROJECT_FILE_RELATIVE_PATH" = "" +"NUMBER_OF_EXCLUDED_FILES" = "0" +"ORIGINAL_PROJECT_FILE_PATH" = "" +"NUMBER_OF_NESTED_PROJECTS" = "0" +"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" +} diff --git a/HomeCinema.Data/HomeCinemaContext.cs b/HomeCinema.Data/HomeCinemaContext.cs index 71344006..310a6e59 100644 --- a/HomeCinema.Data/HomeCinemaContext.cs +++ b/HomeCinema.Data/HomeCinemaContext.cs @@ -1,52 +1,62 @@ -using HomeCinema.Data.Configurations; -using HomeCinema.Entities; -using System; -using System.Collections.Generic; -using System.Data.Entity; -using System.Data.Entity.ModelConfiguration.Conventions; -using System.Data.Entity.Validation; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace HomeCinema.Data -{ - public class HomeCinemaContext : DbContext - { - public HomeCinemaContext() - : base("HomeCinema") - { - Database.SetInitializer(null); - } - - #region Entity Sets - public IDbSet UserSet { get; set; } - public IDbSet RoleSet { get; set; } - public IDbSet UserRoleSet { get; set; } - public IDbSet CustomerSet { get; set; } - public IDbSet MovieSet { get; set; } - public IDbSet GenreSet { get; set; } - public IDbSet StockSet { get; set; } - public IDbSet RentalSet { get; set; } - public IDbSet ErrorSet { get; set; } - #endregion - - public virtual void Commit() - { - base.SaveChanges(); - } - protected override void OnModelCreating(DbModelBuilder modelBuilder) - { - modelBuilder.Conventions.Remove(); - - modelBuilder.Configurations.Add(new UserConfiguration()); - modelBuilder.Configurations.Add(new UserRoleConfiguration()); - modelBuilder.Configurations.Add(new RoleConfiguration()); - modelBuilder.Configurations.Add(new CustomerConfiguration()); - modelBuilder.Configurations.Add(new MovieConfiguration()); - modelBuilder.Configurations.Add(new GenreConfiguration()); - modelBuilder.Configurations.Add(new StockConfiguration()); - modelBuilder.Configurations.Add(new RentalConfiguration()); - } - } -} +using HomeCinema.Data.Configurations; +using HomeCinema.Entities; +using System; +using System.Collections.Generic; +using System.Data.Entity; +using System.Data.Entity.ModelConfiguration.Conventions; +using System.Data.Entity.Validation; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace HomeCinema.Data +{ + public class HomeCinemaContext : DbContext + { + public HomeCinemaContext() + : base("HomeCinema") + { + Database.SetInitializer(null); + } + + #region Entity Sets + public IDbSet UserSet { get; set; } + public IDbSet RoleSet { get; set; } + public IDbSet UserRoleSet { get; set; } + public IDbSet CustomerSet { get; set; } + public IDbSet MovieSet { get; set; } + public IDbSet GenreSet { get; set; } + public IDbSet StockSet { get; set; } + public IDbSet RentalSet { get; set; } + public IDbSet ErrorSet { get; set; } + //24-03-2017 + public IDbSet ActivityLogSet { get; set; } + public IDbSet ActivityLogTypeSet { get; set; } + public IDbSet RolePermissionSet { get; set; } + public IDbSet SettingSet { get; set; } + public IDbSet UserPermissionSet { get; set; } + public IDbSet UserPreferenceSet { get; set; } + + + + #endregion + + public virtual void Commit() + { + base.SaveChanges(); + } + protected override void OnModelCreating(DbModelBuilder modelBuilder) + { + modelBuilder.Conventions.Remove(); + + modelBuilder.Configurations.Add(new UserConfiguration()); + modelBuilder.Configurations.Add(new UserRoleConfiguration()); + modelBuilder.Configurations.Add(new RoleConfiguration()); + modelBuilder.Configurations.Add(new CustomerConfiguration()); + modelBuilder.Configurations.Add(new MovieConfiguration()); + modelBuilder.Configurations.Add(new GenreConfiguration()); + modelBuilder.Configurations.Add(new StockConfiguration()); + modelBuilder.Configurations.Add(new RentalConfiguration()); + } + } +} diff --git a/HomeCinema.Data/Migrations/201703231700563_initial.Designer.cs b/HomeCinema.Data/Migrations/201703231700563_initial.Designer.cs new file mode 100644 index 00000000..385bd80f --- /dev/null +++ b/HomeCinema.Data/Migrations/201703231700563_initial.Designer.cs @@ -0,0 +1,29 @@ +// +namespace HomeCinema.Data.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class initial : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(initial)); + + string IMigrationMetadata.Id + { + get { return "201703231700563_initial"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/HomeCinema.Data/Migrations/201703231700563_initial.cs b/HomeCinema.Data/Migrations/201703231700563_initial.cs new file mode 100644 index 00000000..7e630fb0 --- /dev/null +++ b/HomeCinema.Data/Migrations/201703231700563_initial.cs @@ -0,0 +1,156 @@ +namespace HomeCinema.Data.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class initial : DbMigration + { + public override void Up() + { + CreateTable( + "dbo.Customer", + c => new + { + ID = c.Int(nullable: false, identity: true), + FirstName = c.String(nullable: false, maxLength: 100), + LastName = c.String(nullable: false, maxLength: 100), + Email = c.String(nullable: false, maxLength: 200), + IdentityCard = c.String(nullable: false, maxLength: 50), + UniqueKey = c.Guid(nullable: false), + DateOfBirth = c.DateTime(nullable: false), + Mobile = c.String(maxLength: 10), + RegistrationDate = c.DateTime(nullable: false), + }) + .PrimaryKey(t => t.ID); + + CreateTable( + "dbo.Error", + c => new + { + ID = c.Int(nullable: false, identity: true), + Message = c.String(), + StackTrace = c.String(), + DateCreated = c.DateTime(nullable: false), + }) + .PrimaryKey(t => t.ID); + + CreateTable( + "dbo.Genre", + c => new + { + ID = c.Int(nullable: false, identity: true), + Name = c.String(nullable: false, maxLength: 50), + }) + .PrimaryKey(t => t.ID); + + CreateTable( + "dbo.Movie", + c => new + { + ID = c.Int(nullable: false, identity: true), + Title = c.String(nullable: false, maxLength: 100), + Description = c.String(nullable: false, maxLength: 2000), + Image = c.String(), + GenreId = c.Int(nullable: false), + Director = c.String(nullable: false, maxLength: 100), + Writer = c.String(nullable: false, maxLength: 50), + Producer = c.String(nullable: false, maxLength: 50), + ReleaseDate = c.DateTime(nullable: false), + Rating = c.Byte(nullable: false), + TrailerURI = c.String(maxLength: 200), + }) + .PrimaryKey(t => t.ID) + .ForeignKey("dbo.Genre", t => t.GenreId, cascadeDelete: true) + .Index(t => t.GenreId); + + CreateTable( + "dbo.Stock", + c => new + { + ID = c.Int(nullable: false, identity: true), + MovieId = c.Int(nullable: false), + UniqueKey = c.Guid(nullable: false), + IsAvailable = c.Boolean(nullable: false), + }) + .PrimaryKey(t => t.ID) + .ForeignKey("dbo.Movie", t => t.MovieId, cascadeDelete: true) + .Index(t => t.MovieId); + + CreateTable( + "dbo.Rental", + c => new + { + ID = c.Int(nullable: false, identity: true), + CustomerId = c.Int(nullable: false), + StockId = c.Int(nullable: false), + RentalDate = c.DateTime(nullable: false), + ReturnedDate = c.DateTime(), + Status = c.String(nullable: false, maxLength: 10), + }) + .PrimaryKey(t => t.ID) + .ForeignKey("dbo.Stock", t => t.StockId, cascadeDelete: true) + .Index(t => t.StockId); + + CreateTable( + "dbo.Role", + c => new + { + ID = c.Int(nullable: false, identity: true), + Name = c.String(nullable: false, maxLength: 50), + }) + .PrimaryKey(t => t.ID); + + CreateTable( + "dbo.UserRole", + c => new + { + ID = c.Int(nullable: false, identity: true), + UserId = c.Int(nullable: false), + RoleId = c.Int(nullable: false), + }) + .PrimaryKey(t => t.ID) + .ForeignKey("dbo.Role", t => t.RoleId, cascadeDelete: true) + .ForeignKey("dbo.User", t => t.UserId, cascadeDelete: true) + .Index(t => t.UserId) + .Index(t => t.RoleId); + + CreateTable( + "dbo.User", + c => new + { + ID = c.Int(nullable: false, identity: true), + Username = c.String(nullable: false, maxLength: 100), + Email = c.String(nullable: false, maxLength: 200), + HashedPassword = c.String(nullable: false, maxLength: 200), + Salt = c.String(nullable: false, maxLength: 200), + IsLocked = c.Boolean(nullable: false), + DateCreated = c.DateTime(nullable: false), + }) + .PrimaryKey(t => t.ID); + + } + + public override void Down() + { + DropForeignKey("dbo.UserRole", "UserId", "dbo.User"); + DropForeignKey("dbo.UserRole", "RoleId", "dbo.Role"); + DropForeignKey("dbo.Rental", "StockId", "dbo.Stock"); + DropForeignKey("dbo.Stock", "MovieId", "dbo.Movie"); + DropForeignKey("dbo.Movie", "GenreId", "dbo.Genre"); + DropIndex("dbo.UserRole", new[] { "RoleId" }); + DropIndex("dbo.UserRole", new[] { "UserId" }); + DropIndex("dbo.Rental", new[] { "StockId" }); + DropIndex("dbo.Stock", new[] { "MovieId" }); + DropIndex("dbo.Movie", new[] { "GenreId" }); + DropTable("dbo.User"); + DropTable("dbo.UserRole"); + DropTable("dbo.Role"); + DropTable("dbo.Rental"); + DropTable("dbo.Stock"); + DropTable("dbo.Movie"); + DropTable("dbo.Genre"); + DropTable("dbo.Error"); + DropTable("dbo.Customer"); + } + } +} diff --git a/HomeCinema.Data/Migrations/201703231700563_initial.resx b/HomeCinema.Data/Migrations/201703231700563_initial.resx new file mode 100644 index 00000000..a6ff86a3 --- /dev/null +++ b/HomeCinema.Data/Migrations/201703231700563_initial.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + H4sIAAAAAAAEAO1dzW7kuBG+B8g7CDolgddte7DAxmjvwtP27DZ2PB64PZvcDFqi28Lop1eiHBvBPlkOeaS8QiiJlPgrkZJabXuMubRJ8eNPFYtVRVbN//7z3/lPj1HoPMA0C5L4xD3cP3AdGHuJH8TrEzdHd9/94P7045//ND/3o0fnN/rdu+I73DLOTtx7hDbHs1nm3cMIZPtR4KVJltyhfS+JZsBPZkcHB3+fHR7OIIZwMZbjzK/yGAURLP/Afy6S2IMblIPwIvFhmJFyXLMqUZ1PIILZBnjwxP0lieAiiHHp/hlAwHVOwwDgYaxgeOc6II4TBBAe5PGXDK5QmsTr1QYXgPD6aQPxd3cgzCAZ/HHzuek8Do6KecyahhTKyzOURJaAh+/IwszE5r2W160XDi/dOV5i9FTMuly+E3dRdgFT1xE7O16EafEht7pl+wBm+7TdnqOo3auZAvNO8W/PWeQhylN4EsMcpSDccz7nt2Hg/QqfrpOvMD6J8zBkR4rHiuu4Alz0OU02MEVPV/COjH955jozvt1MbFg3Y9pUM1vG6N2R63zCnYPbENaMwKzCCiUp/BnGMAUI+p8BQjDFdFz6sFxKqXehrw9BmqHiJ+0Ssx/eRq5zAR4/wniN7vEGO8Ab50PwCH1aQobxJQ7wrsONUJpDxTDbu/4IdtXzeQSCsKXbo+10S2myAKnf0vv3W+kct/49h5j1aM8/54FvjYKlF7y8ex+k6J7iFEXXQWQ/oovkNgjbqW+0EO29XMF1kOEtXWyWYqiWw57PGpHUKqjO0zSxllJlozcR1cEnMMvAuo1R8M8ROGWFgPf1OsUH9ta7KphvkcJiObbFj3i9U2jLj2WjN35sJ17HmTWS+P4EHoJ1OV5JbD5gerjOFQzL6uw+2FSa5H5ZdUMo/yFNoqskpC2q4ptrkK4hwsNP5LpVkqdeX34rgWz5rWz0xm/t/HYdoI5jcisKwxnMvDTYVHp9m6q0HV0pmkLkl3y/9Lto2bFQQQo9VBz+U5PoH2mAYFu/21El8Z9+7u2gYyzyIMhgDzVOgYX3ZjHoCub9E7KHwLoCVmDTL1fLEWwJU/FPpHs/6U8lvEr605PBdCBYqnlf284h+oE4lKpcMxZSqRqM8VFUYtgeRWWjt6Ooy2TDNBoqL8exRJfZ6QPefkWLehMnmJFAPFS3UrJ0yR43pL7haKZYYmi2znZzXWF64KG3DKX+QhwMqdAMh9YO2mAViO0Oq1q9bbF2vqaOy6G7rCT3UJCKZOOctxCTM4a+GqzTMkd5NtxT1FsukBOl/2YUzS71Vu23GZPQ2u4q2rxtxJ2b+cY0/pLBtA+dabs3WneoJNlwgVusszWGXgEoqa0QOJSkN9UXjcDhKqTTn68ddPoXUH0Y8Y0Ju5kw/pbuw34B2X2xTln2r6T1RmxL/a9AiHZwC5h9xGd/4/g3tlpGu0NokztUTqhNj6L2hvmElz5NjVL8MNU28uc0yxIvKEfCWmnE0cFP6zz2nRavR0Xp2kOBqY1FTbDBwgX3e+L+TVomNV6tzDV4xOvC4x26olC6jM9gCBF0Tr3qucUCZB7wZfrgtfD5EizHYFoIEhAuME2wZAxiJAu9IPaCDQj1oxaaGErKYkg1uFhzBjcwLoScfu1Neq2dsXLXdQ/CKnUtynzGcE87U7EGvo4JlNZ+wwTESjBnKpWHoItJd89UilFPwFSKtTfptfZY7ZCpqHXYzgaS36aDsUZlBN1gFFxJnT9dbD6At4SlmIy7hFmb9Fu7WXbCX5yjvf3oEr3uU4oZzVgUzGUoQgcchvw6THYa8lN+/pKLNzN15NTYnA09G8eF+amoNlVZCaQA3P2xqBz2BPylpIFJv9RhsTP+YiyJNl5QmRU8h00kvDRGTC92781i8mpMxGPyzE06pp61CZisMh9xG4RbwJQ6GWqfU1EDH5HCdYUHSbxXGTHqRRYokFcQCXc0q4L8jdVKmKB5si6JOB6mfP2pxiCvSTsASotJDUAM0g6A8oxRAxCtoAOgPNbUAOQo7wCoVC41AtU0uyAwT2oAyq3Y0ZyytRqi2dEGMHoIqTnDwwI56AsO5gvFAw9xO7V7PurBsiSXtmS7t4PBaPhOlJ78tAymzN2ry1PWWuWddjkz3IZJW6asssUNlq33lOsrQ92klVajgd3Yb+KiwcegMFt08Nz5l0E6FlcZNN0mTT8mF2wRg9XrMW3h0kaed4u6baBwM4PmpFnL5NVKNkt1NUjPybNOY/XsdcqgiToozN9k7go9zmwVWxaAerBrFaSum8+qmEBSMJ9pggfnF2CzCeI1E0xISpxVFUm4+G5lH2UXVRgzj1tbUWGqe0JJCtZQqMVd45GW4WJFCOMtKG4VFn4kfSYrXJqDk/Yn61Qy6eiRStsUv0X9rgytbLQvWTsljT/g2UWFblve1zFU1zd1iqBOEIJUcT24SMI8ivVqtr41E3vHgjDF5lhNMB0L1ZSaI5HLQBaGFJlj8JFu3ApxNeaIzKNBFo4pNsfigthYNK7CHI8GsrFQtMwcRQ5UY/HkWhl5PhM4XLK5pI0kGb/83jTaubUZM2TbVgaP/Z7VtNvOhq0j0ThK00JzHDbSjIViy+3Yub4IFtm5rng27FIbD0PYRWkEGbCLpt122EWWxzpZvCNS1GryEFIojTMDUmjabYcUJIaKBSBFFvuMDYji9hlbYXFIRpIsIUXmGPWdOYuivUhvmVsdw8RNrC41R6IxSSwOLTNHaUKMWJym1OZYZWKG+BOVqbDAI3FDHBQps+BHJnSIY0qm/NmIidoQHiImKnegvZjQtNvSAU/v3HhVTnMRp8cZU1vlAl24qbEVz4ZZGm/REG4hrl97dtE13A6/sMEaLApbbqMWkrcEvE6oeWCgx2GjNniJ15TboLGBGzweW2Ol/pbhHILqW5Y9Hz4m7p9BXKxw5pnwsLLZN6qjsq64IbSoL3Ls6aFvuh2a0DtT7ujQ3KPqUej1PrdjNVf+O6XuGJTtSdUpKRpLO60pndY7J767Z8HEOgupXr6m52R6WWKj6dCX8byaQ0tfuEtEuh4QP6l7r68JhOuAOXHNdycclHz11SeugxfqIfALP/3qKUMwIsr57+EiDPB8mw8uQBzcwQxVMTfu0cHhkZC28PmkEJxlmR8qrjZUeQR5ek0QOBQUq9oZGmQZ/CGl7YsfQOrdg1QOFxqYlW80YC7ISIl61ANVlVNPCf69PbaUqCAvC4Kyy7ug8EMMT5/n4yI0PH2ehkws6pBseYajtMyW9zr2opCfjlLiLxF4/Kvt+ss56AbBKWLExqakKgzrpVKyU+51ChHLdGmvY9m4BGWjnReK/GO6U6PHsRGNtWOFFGLlAksPTJexDx9P3H+XbY6d5T9vSLM95zLFytaxc+D8MTjx2GhLz+cVG+s4/SykDRsLV5EVrPehymcFw7+fSoIOTgxmou/I3GaZ8ep1SBMhx5TphiLNBm2o8RU+RZaq26CLoWzzML0OusuJj/psPSHtkSn3kGaDuEdOltRfDCmSJanADFVKJnmSgZ0wiCPlaLGXyo8TKoNqB/OLXTk+m47pFqxaDduBXAoe046rVhYd22XKeT00jV+OW0idWmY0eDZzzHiuLCExTLeiMIXB3y/9ColhmjRDihDZ0SffS6+oTN1bxO1Ekr+SVCqGJNpmkotpEw9MlsXiBSQXsEiLsrM8KDT4dNLMJ1MwifZp1ctNbvImR75NOWKWpKSKuZwyf4gcZjlllgjNK6etJR55VclGdplbZGpG0Tyc2i2j7DxhiBzmKtJMnQykNRNI9fwGG2O3CaZwZYTZ5QnRJwlRYVvkD9EnD1EBW+QV0ScVUQFb5BvRJxtRAdvkIWlJQqKCtkhQos1OosS1yVvSmrREhW6V0kSbz0SHLKFuL9MJx75MeJ8sOyR9kWmjZrwdZTIxHJ5KCZViZsaa0liZSrqHqDTA5OCO4RMbMw3Js6HWaElGWKnSBCS0TUqURfyz+XGmNmIKEWmYk0zOIj2I/M4XqznMfz+OVawsWDcQxX9GHkOPU3Dqb5bxXUL1LGFE9BPpRRsCPtZ+TlMU3AEP4WoPZln5MuI3EOal2/4W+sv4MkebHOEpw+g25MLaCn2trf8yBwo/5vll+donG2MKeJhB4fm+jN/nQejX4/6g8HxrIApFkNygFLQsXkXC9VON9CmJDYHI8tX66zWMNiEGyy7jFXiAfcaG2e8jXAPviT7X1oN0E4Jf9vlZANYpiDKC0bTHf2Ie9qPHH/8PkRFGAoV/AAA= + + + dbo + + \ No newline at end of file diff --git a/HomeCinema.Data/Migrations/201703241203435_logAuthSetting.Designer.cs b/HomeCinema.Data/Migrations/201703241203435_logAuthSetting.Designer.cs new file mode 100644 index 00000000..8a54ee3a --- /dev/null +++ b/HomeCinema.Data/Migrations/201703241203435_logAuthSetting.Designer.cs @@ -0,0 +1,29 @@ +// +namespace HomeCinema.Data.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class logAuthSetting : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(logAuthSetting)); + + string IMigrationMetadata.Id + { + get { return "201703241203435_logAuthSetting"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/HomeCinema.Data/Migrations/201703241203435_logAuthSetting.cs b/HomeCinema.Data/Migrations/201703241203435_logAuthSetting.cs new file mode 100644 index 00000000..ccf771c7 --- /dev/null +++ b/HomeCinema.Data/Migrations/201703241203435_logAuthSetting.cs @@ -0,0 +1,116 @@ +namespace HomeCinema.Data.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class logAuthSetting : DbMigration + { + public override void Up() + { + CreateTable( + "dbo.ActivityLog", + c => new + { + ID = c.Int(nullable: false, identity: true), + ActivityLogTypeID = c.Int(nullable: false), + UserName = c.String(), + UserId = c.Int(nullable: false), + Comment = c.String(), + DateUTC = c.DateTime(nullable: false), + IpAddress = c.String(), + }) + .PrimaryKey(t => t.ID) + .ForeignKey("dbo.ActivityLogType", t => t.ActivityLogTypeID, cascadeDelete: true) + .ForeignKey("dbo.User", t => t.UserId, cascadeDelete: true) + .Index(t => t.ActivityLogTypeID) + .Index(t => t.UserId); + + CreateTable( + "dbo.ActivityLogType", + c => new + { + ID = c.Int(nullable: false, identity: true), + SystemKeyword = c.String(), + Name = c.String(), + Enabled = c.Boolean(nullable: false), + }) + .PrimaryKey(t => t.ID); + + CreateTable( + "dbo.RolePermission", + c => new + { + ID = c.Int(nullable: false, identity: true), + RoleId = c.Int(nullable: false), + PermissionKey = c.String(), + }) + .PrimaryKey(t => t.ID) + .ForeignKey("dbo.Role", t => t.RoleId, cascadeDelete: true) + .Index(t => t.RoleId); + + CreateTable( + "dbo.Setting", + c => new + { + ID = c.Int(nullable: false, identity: true), + Name = c.String(), + Value = c.String(), + AppScope = c.Int(nullable: false), + CreatedAt = c.DateTime(nullable: false), + UpdatedAt = c.DateTime(), + CreatedBy = c.String(), + UpdatedBy = c.String(), + Description = c.String(), + }) + .PrimaryKey(t => t.ID); + + CreateTable( + "dbo.UserPermission", + c => new + { + ID = c.Int(nullable: false, identity: true), + UserId = c.Int(nullable: false), + PermissionKey = c.String(), + Granted = c.Boolean(nullable: false), + }) + .PrimaryKey(t => t.ID) + .ForeignKey("dbo.User", t => t.UserId, cascadeDelete: true) + .Index(t => t.UserId); + + CreateTable( + "dbo.UserPreference", + c => new + { + ID = c.Int(nullable: false, identity: true), + UserId = c.Int(nullable: false), + PreferenceType = c.String(), + Name = c.String(), + Value = c.String(), + }) + .PrimaryKey(t => t.ID) + .ForeignKey("dbo.User", t => t.UserId, cascadeDelete: true) + .Index(t => t.UserId); + + } + + public override void Down() + { + DropForeignKey("dbo.UserPreference", "UserId", "dbo.User"); + DropForeignKey("dbo.UserPermission", "UserId", "dbo.User"); + DropForeignKey("dbo.RolePermission", "RoleId", "dbo.Role"); + DropForeignKey("dbo.ActivityLog", "UserId", "dbo.User"); + DropForeignKey("dbo.ActivityLog", "ActivityLogTypeID", "dbo.ActivityLogType"); + DropIndex("dbo.UserPreference", new[] { "UserId" }); + DropIndex("dbo.UserPermission", new[] { "UserId" }); + DropIndex("dbo.RolePermission", new[] { "RoleId" }); + DropIndex("dbo.ActivityLog", new[] { "UserId" }); + DropIndex("dbo.ActivityLog", new[] { "ActivityLogTypeID" }); + DropTable("dbo.UserPreference"); + DropTable("dbo.UserPermission"); + DropTable("dbo.Setting"); + DropTable("dbo.RolePermission"); + DropTable("dbo.ActivityLogType"); + DropTable("dbo.ActivityLog"); + } + } +} diff --git a/HomeCinema.Data/Migrations/201703241203435_logAuthSetting.resx b/HomeCinema.Data/Migrations/201703241203435_logAuthSetting.resx new file mode 100644 index 00000000..25b42fa7 --- /dev/null +++ b/HomeCinema.Data/Migrations/201703241203435_logAuthSetting.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + H4sIAAAAAAAEAO0d227cuvG9QP9B2Ke2yMnaCQq0hn0OnHWSYzSJA69z2rdAlmhbiFbaI2ldG0W/rA/9pP5CSYmieBlKpO6bs/CLlxSHt+HMcGY487///Pf0p6dN6DyiJA3i6Gxx/PJo4aDIi/0guj9b7LK7H/6y+OnH3//u9K2/eXJ+Kb97Tb7DLaP0bPGQZduT5TL1HtDGTV9uAi+J0/gue+nFm6Xrx8tXR0d/XR4fLxEGscCwHOf0ehdlwQblP/DPVRx5aJvt3PBj7KMwpeW4Zp1DdT65G5RuXQ+dLX6ON2gVRLj05YWbuQvnPAxcPIw1Cu8WjhtFceZmeJAnX1K0zpI4ul9vcYEb3jxvEf7uzg1TRAd/Un1uOo+jV2Qey6phCcrbpVm8sQR4/JouzFJu3mp5F2zh8NK9xUucPZNZ58t3tjj3suARF32I7xeO3N/JKkzIt8IC5yAClL7kmr5wgA9eMNTAGET+XjirXZjtEnQWoV2WuOEL5/PuNgy8v6Hnm/gbis6iXRjy48UjxnVCAS76nMRblGTP1+iOzuLyYuEsxXZLuSFrxrUpJncZZa9fLZxPuHP3NkQMHbiFWGdxgt6jCCVuhvzPbpahBO/mpY/yBVV6l/rilop02dx1PTiMxQn5r4SCURofzYXz0X36gKL77OFsgf9dOO+CJ+SXJRTylyjAJxk3ypKdUUeXfrfBruLNBq/S4GPFBx99uVmV/ZCfNwFZI8vxXm7PfT9Badr/iD+5j8F9jlD1+LFwrlGYf5c+BNuCjPHH7avy/bsk3lzHoQhK/uzrOt4lHsGauPnbGze5R5n5FAiqNI67+AgeLKmrHWH+ATSs02VF1kyJXbFsrQke+ehA9OoP0vo5zdAGj+ifceIPfvxHoYdvI7JWbDJvYoykbtRAYozRszgddjhJ2hwQsZmLRfXocXx0ZIQelrzk7cYNwppuXw3T7c9u+kDWKU0bjt5A/a/dsI7fD9TrZfoh9r7Znk5YkFgliKCavTBRyx8/o2QTpORQpiCrFL9RuCVQzfhhyTChb0qmajNUAk0/yK/cJ+L4qhqFl0vVnTi5OM02RLNqfSCfw18CqtXGMxucTb9P3ChrQQjshdsWJxY6FrpT3fpsENBtTgVpdzgPw58Hss7WMLToWey2Bj1J5dfiCxExWQWIklVtJ2Rsg4gHJGxGwobrzp97kLCM93iV76793aVsd9jr+r1+FyRp1rDhA11gPrhT9TzR1anck5Vbe3Hq43wBnCUKft0hTkJ6vwv8VveXq7s3QZI9dFaGfoxvg7B+93uQ167RfZDiI00OCxmq5bCNCdXbJImtqVTe6ECiGvAEpal7P7wCbp253rebxPWG76q9GsAYH/F6J9bSUd7ogI+Ti0d1AvnH+DHQqE/yqq905yuBnCtWdDp8HaTLMca3HJAtvuWNDvhWj283QdbAJgcRGC5Q6iXBtvANqBOVhpGVNmOQ/Bzvu963L4IEeRlh/mNv0d+TIEN1/Q4jSuKf/s6boGNM8pCbohZiHAALn00yaKrGe87sQWBZAQuwyZfryx7uEqbkn1L3dtRfVsZAnMF0IJiqed/q+FD5gTyUolwzFlrZSS+Uw7BlRXmjAytqurLhPepKL/u5iV6m54/4+JEW/eniqRADoHSOHl9pfYXRXLGC0Hyd7eG6xvuBh14zFPaFPBhaoRlOWdtN8ZoDsVa95q0OR6zBpY0qLruesny7O5sS8i3rh98ivJ0R8mFgjTfzbFfnM2eoKWpNFyhHaX8Y5WsXfFRbW0Ham6vF1ofDOYBpbVxztb0hT0QBxZwHVCu8BfqmmwiHskI8txTiimYHNJ6BP+Mvbrgbvpfz7XbtxVvU7UxSXex51pnNfdn6OkhGQ3gzvAcLHeIIPZmpkNr0ZefMlaA7lKDIs9ZPiq0PZGUEZy622oUX/ffg2T0QJWzpUcYWGPYoE6thjzLpGxtOf56msRfkA1MfTihvT8QJv418x+IhSrHc0jMRvPD4dAZbfB5xwdniT8qymvXCBHqwlwJ3xZ6OF/IJv4ouUIgy5JCW5AHfyk0911d3Gq+lL5ZcFztAnhmu8BZjMhNEmUpBgsgLtm5oPh8JhCEZIkNknck1F2iLIkJBzPfOZBTAszd1UKxvaT2blu90yeFpPfpCXpo6hKp12awQSXZANsfYWi9usYP5oWfN4EdAy5q9Mem95H2T4WDlilmHHIBfpogWxe3PDuNUd04OKARwHrimDHskLFP2wKTfUvMwGX5xzzLqcAF6ozEi4dEORkMFzdC9NYqpqzESjqkznz0RU97ymohlOhbag8S3X8xTN/KRBbq9Ypu8wVyHEaD1vEIGahA0xzDQF6uCR633c8MuYNQjIBaw9ia9MqeeSZCKNxTrkAC0GldIQK1N5kgFWZqbkHR6pAJGPQJSAWtv0ivzfJgQqUorYz0aKPb/BsQaSP7S2D+5iwF1IhhE+AKXYjTskmZt0i8z10/ICanDVj3rkr23xiQzmrEAyGVIQjswQ3EdRuOG4pTnT7kg47JuU2stzaJGoZ16rM5MPXuVRc3gR8C+mr3ZC/WFbPao1aDqbCCSipYzK1qqaDUGlNnfMmsGP5aKFt6bmd01C9sXbpPhFiihA6isx6QGPWWAORoPklqkU2r2kxGJQF6jTNWarAkKVVY3SBOiYKUWGIHQCLAwczUAJcsOQypw3KB5RXj0gHiOYACSYJQeWMEBGsDoQRg1Lx09YRDVu/cGMPkTUhgGfZLaACC/LsMAqDaiAUAuYMAAqEjYACCXaWAAVI5r2olc3tbsBb1mGGxmE5rJgkfTtApnNM3ESgc3E/RnNK8G/TlmJIHkaBR41NWIj1wLgwCRMjm1M9OzCau0TCHUdqZ5GDIjbDKHFJfJYAnB+Dzq0jUaiFXxQGMi5iYEUMWa1aozC0tA+1saLjYMvCgai6UyctVmKY2ZEeKGJVDtlBwgDZCWk+eDmMGz19nTlFEDFrXmPauDotn5/hZAjcpaT1AajoTW3tOddAx/EoRHeeoyaE0QjUYIbrQVA66ZNmR44GBUUkDnKQtPpdQpaxXkjSpybriVyFAzZUgtbrBsrafMXoHoJg0qcA1UuO0mLuteeWJXCUw9YXj52FOH4pBusVm72A7JJbWgweq1mDb4akKdfaP+y1gDJvEqc+5fp/UajAEqbqYawahOLWOsmJEFI1FebhKMNMqYTuygdH9lKgBWd7osUkzQgtOlJhfF6Ud3u8U3BC43BS1x1kViitUPa/ukDZsCxtITzqKssGA9ZXHi3iOplsTd91EeOYxkxLh1ia/yyt8on6kKD81lp+wP1Gmo21fef8pm5H9ZxZIn6xC0H6qOiLZ/h+dI0gjk00WwVKG2dkiyEDd0E8DjfhWHu02kV3rpWwNurTwwA69XPWyCxoXDOw+yKrWDRFRpMhxIvaaHwrI38GBYoTkclp2Bh8MKzeFw2RmEDayKVVinSwmJFOWigq6KZlY8BLZHpLzQ9nRMoCu93VGBIQxzXKQ8ADwgqcocpnpEbI8HC+XPA2GFs0Gikq11wRyIaxugC9xsGBwhfUUg2Yts97WIGynsalFkDkOOn88Dk+sszkEeFV9A/7zEgvixCPfCSrNSO3LMgtvJJJlVzOoUiMJ01/PA6YjbnYw6AMOdke4MXXrazgOTqsxhsnjrPDRWOCssKm9QXfEHuiQaYg7cdM44U3oG8FB03gKT7W4fO9tyV8fcUXPJZ6J94G2mXfaCWVft90PfdJg94QJ080C4YnNYVcRtHlRVOq4kJIbDFlZIqLGgSFVkMYEoVcV2UgyLdC1LMazCHF4Z7ZoHVZZZUEslmrVAN5Xa2Zxc5qbQ5dgWDg32Z1bTbpgDy8JVCztdFlqI9Fw4akGw58q/W6GcmaO6oAtoVjNAF0273yjPZYaXLlsBmvsMtkLTbpituCkCLfMAaJHFOeND3gjnjK+wYJIbhZbQIosrVPkgSrhC6V5J1cyNBToWJsZKzSGVgYt5OGWZxXWTxSEWbpqs1IatcoGFRY7KVVjAo8GFBVAu5PBVi49cfGEBKbny2ZAJZlrtQiYKdz97MqFpNxCDLx9UiKKc5pWFHk6f0qoQDVdU4HEVs0GWyv+g0426cO1scafWNBwGX/iIroKliyu3EQvpQzFRJtS8HtPD4UO7ihSvKreBxkd3FeHxNVbibx7zVRJ987L54LHiiNFVQ9RJd9wEYBj8ttPgDaE7norlVQ7enZgedQVvwfZ0Lae+qugg0Eh4PAhaZOEhwSJ+Co4RrNSCMFdRPwW6XBVbMPMq7qfAzKti63G9eQbH9cZKMOCCfQLjsoPV9m4zpWFPcAXrbNirHlm0NOzVAJizkUaOyinet8S6udKTQbFQ8feTP2G90xL2m/n7UV87wQkwnzdx6cvnm1K/P9n5rvhk4eDFeQx84nhX+L5Q9vJruAqD3KWq/OCjGwV3KM2KcLSLV0fHrxbOeRi4aeGaSd0KT+TXiUZ+hseviZ8h8jdLubm9tyKBkqa+IKqrMX61bnpjhNUNyMI2Bs61jIILuPlxvSmPRi8jHz2dLf6Vtz5xLv8hv4m6vHjhXCV450+cI+ff9kGtmYtgMYro0U28Bzf5w8Z9+iMPzSj8dMpHCTadUNGq0yyYZ2EPk2DehQUswkyzNuHCOd9C61EZx8Cuj6q7r2dE8u/rYVN7Q3Hm6lfAug2yvrJ6ArEL9nX/Kgc8ccXVxHldsjuDUF+1gCr75vUMvnDX6xlo5b1niogwpZNS1RpSO7sY/Rq1xV6j9yRsTtKW9EDOmLfdIOQMCAl02HPb5Foxn5fItOOilUXHVjmpvpM9hYQCJdVpP6sGu5bt7cpxLmo9c/jKY20vRAfRna0LKgEkR06mucsLgrzLu4CYwVswfObf1vF6Uzq41W6TLTtSvdyGEUsAr7G9PYvM/6wHcYB3QOvpKj2wgAmFeN7XnRyRH0FBjPd12agjV8/8AkhwpuMaLdjGpq8TK6W5N5UPabNOkmnlHdbz0pfuYv2y089Savu+4AKZ61szVTFzPf7/Od/QzsnrTeSdDlpIwEdrb6mJlAfd9EDRZt108b0LfEAm9R6v+JCv1d7uu5qcu83Rk1Jzm2IPbdZNUYDkhN7tyRCQ0BsCZihScgm+De4JXZUT3526cSQNUP/qRuuU0N/HfvVmaxKSi3aCJKdSbkPalETKrcmLkki5LW1REit3s17LyZO73X3194c+j06d69HenqDpDCxgiuJ5WJ7bUoPR0vXySzZ61lxwRO3zxnVN1KaumfHpc1omaPuuU+tOmWqSEyi7pPJtnZVh/BS5c8u50DYtbhG5k9uzwdO/qFGpx8xLqolDMgi2GPc1eX4Yw/S2U5KYsRFlTLJijCiTEhTjFLVTosp0os1YCGMrz8w+ySwND89t1vB5YKWg2W2y2rZCEl1Qjt6xRBdyQu1o/gljDbdoyFSe46ZXHC1X5x6kULRI/jpZttcyyxIvRqOh87uOkvdQF2NA7WlfUrge6Mhvk440pqKYyaVYTrMmjWJwdcpYF+TGcA8zvCbbpFGdVB3HpcOT1XEWaVtnfQ1qfJE+6U1Ieg9dGuOUxCHyLtIn1uqNuym3afEK+mzh38Z4zwtDR4fkpyaZTxu6LD5q6LY4GEpfRTHUQYusqQYpU3U98d8Y9FmwCbC3okrXT1Hb0IMGuh6yEdQq1aoCuaqCoNvlaNUnaIVgW+Ru1SduhQBb5HTVJ3SFAFvketUneoUA2+SArUkAC+IHapEc1iAzrA4XLU5T6e5SkzoWXKxWeWUNkspqCcTME8/ytBzMVKMyQ40uFYahiibzSSSrJDGrnSzMM6CkFP1MuTLNdUgQy7OEKl5+0zSVVloWNHn6V/s9HHJyPad2tZ/gOCeyl6ytAnPmAkvXTU/gu1wE5O5T6iUrq+HwIK0P1wZm6FNnXW0eIqjx5EkPLE1Mm1J1NrsFqZ96SZhqR/5hWQ4Kn9kTYx8iEWoLxq7IelBQOvMpWyQ4VQObnS6vdxHx5S1+XaA0uK9AnGKYEfIEhQL75jK6i0u9hjSi8hPl6Wvm+m7mnidZcOd6Ga72EN5hIiTn7pLk2fct8i+jq1223WV4ymhzGwqREYl+pK7/PIurOObTq9ytN+1jCniYAXE7vore7ILQZ+N+B7yC0IAgihfqfEv2kjyfRvfPDNKnODIERJeP6Ytu0GYbYmDpVbR2H1GbsWEk/IDuXe/5M41PpwfSvBHisp9eBO594m5SCqNqj39iHPY3Tz/+H8xI5LWW2gAA + + + dbo + + \ No newline at end of file diff --git a/HomeCinema.Data/Migrations/Configuration.cs b/HomeCinema.Data/Migrations/Configuration.cs index ed681ee4..8ed752a9 100644 --- a/HomeCinema.Data/Migrations/Configuration.cs +++ b/HomeCinema.Data/Migrations/Configuration.cs @@ -50,6 +50,13 @@ protected override void Seed(HomeCinemaContext context) RoleId = 1, // admin UserId = 1 // chsakell } + }); + // add permission App to Role 1 + context.RolePermissionSet.AddOrUpdate(new RolePermission[] { + new RolePermission() { + RoleId = 1, // admin + PermissionKey ="app" + } }); } diff --git a/HomeCinema.Data/Repositories/CustomerRepository.cs b/HomeCinema.Data/Repositories/CustomerRepository.cs new file mode 100644 index 00000000..c39af547 --- /dev/null +++ b/HomeCinema.Data/Repositories/CustomerRepository.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using HomeCinema.Data.Repositories; +using HomeCinema.Entities; +using HomeCinema.Data.Abstract; +using HomeCinema.Data; +using HomeCinema.Data.Infrastructure; + +namespace HomeCinema.Data.Repositories +{ + public class CustomerRepository : EntityBaseRepository, ICustomerRepository + { + public CustomerRepository(IDbFactory context) + : base(context) + { } + } +} diff --git a/HomeCinema.Data/Repositories/EntityBaseRepository.cs b/HomeCinema.Data/Repositories/EntityBaseRepository.cs index 342afa24..325d6d60 100644 --- a/HomeCinema.Data/Repositories/EntityBaseRepository.cs +++ b/HomeCinema.Data/Repositories/EntityBaseRepository.cs @@ -1,81 +1,323 @@ -using HomeCinema.Data.Infrastructure; -using HomeCinema.Entities; -using System; -using System.Collections.Generic; -using System.Data.Entity; -using System.Data.Entity.Infrastructure; -using System.Linq; -using System.Linq.Expressions; -using System.Text; -using System.Threading.Tasks; - -namespace HomeCinema.Data.Repositories -{ - public class EntityBaseRepository : IEntityBaseRepository - where T : class, IEntityBase, new() - { - - private HomeCinemaContext dataContext; - - #region Properties - protected IDbFactory DbFactory - { - get; - private set; - } - - protected HomeCinemaContext DbContext - { - get { return dataContext ?? (dataContext = DbFactory.Init()); } - } - public EntityBaseRepository(IDbFactory dbFactory) - { - DbFactory = dbFactory; - } - #endregion - public virtual IQueryable GetAll() - { - return DbContext.Set(); - } - public virtual IQueryable All - { - get - { - return GetAll(); - } - } - public virtual IQueryable AllIncluding(params Expression>[] includeProperties) - { - IQueryable query = DbContext.Set(); - foreach (var includeProperty in includeProperties) - { - query = query.Include(includeProperty); - } - return query; - } - public T GetSingle(int id) - { - return GetAll().FirstOrDefault(x => x.ID == id); - } - public virtual IQueryable FindBy(Expression> predicate) - { - return DbContext.Set().Where(predicate); - } - - public virtual void Add(T entity) - { - DbEntityEntry dbEntityEntry = DbContext.Entry(entity); - DbContext.Set().Add(entity); - } - public virtual void Edit(T entity) - { - DbEntityEntry dbEntityEntry = DbContext.Entry(entity); - dbEntityEntry.State = EntityState.Modified; - } - public virtual void Delete(T entity) - { - DbEntityEntry dbEntityEntry = DbContext.Entry(entity); - dbEntityEntry.State = EntityState.Deleted; - } - } -} +using HomeCinema.Data.Abstract; +using HomeCinema.Data.Infrastructure; +using HomeCinema.Entities; +using System; +using System.Collections.Generic; +using System.Data.Entity; +using System.Data.Entity.Infrastructure; +using System.Data.Entity.Validation; +using System.Linq; +using System.Linq.Expressions; + +namespace HomeCinema.Data.Repositories +{ + public class EntityBaseRepository : IEntityBaseRepository + where T : class, IEntityBase, new() + { + private HomeCinemaContext dataContext; + + #region Properties + + protected IDbFactory DbFactory + { + get; + private set; + } + + private IDbSet _entities; + + protected HomeCinemaContext DbContext + { + get { return dataContext ?? (dataContext = DbFactory.Init()); } + } + + public EntityBaseRepository(IDbFactory dbFactory) + { + DbFactory = dbFactory; + } + + #endregion Properties + + #region Utilities + + /// + /// Get full error + /// + /// Exception + /// Error + protected string GetFullErrorText(DbEntityValidationException exc) + { + var msg = string.Empty; + foreach (var validationErrors in exc.EntityValidationErrors) + foreach (var error in validationErrors.ValidationErrors) + msg += string.Format("Property: {0} Error: {1}", error.PropertyName, error.ErrorMessage) + Environment.NewLine; + return msg; + } + + #endregion Utilities + + public virtual IQueryable GetAll() + { + try + { + return DbContext.Set(); + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public virtual IQueryable All + { + get + { + try + { + return GetAll(); + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + } + + public virtual int Count() + { + try + { + return DbContext.Set().Count(); + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public virtual IQueryable AllIncluding(params Expression>[] includeProperties) + { + try + { + IQueryable query = DbContext.Set(); + foreach (var includeProperty in includeProperties) + { + query = query.Include(includeProperty); + } + return query; + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + /// + /// Get entity by identifier + /// + /// Identifier + /// Entity + public virtual T GetById(object id) + { + //see some suggested performance optimization (not tested) + //http://stackoverflow.com/questions/11686225/dbset-find-method-ridiculously-slow-compared-to-singleordefault-on-id/11688189#comment34876113_11688189 + return this.Entities.Find(id); + } + + public T GetSingle(int id) + { + try + { + return GetAll().FirstOrDefault(x => x.ID == id); + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public virtual IQueryable FindBy(Expression> predicate) + { + try + { + return DbContext.Set().Where(predicate); + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public T GetSingle(Expression> predicate) + { + try + { + return DbContext.Set().FirstOrDefault(predicate); + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public bool Any(Expression> predicate) + { + try + { + return DbContext.Set().Any(predicate); + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public T GetSingle(Expression> predicate, params Expression>[] includeProperties) + { + try + { + IQueryable query = DbContext.Set(); + foreach (var includeProperty in includeProperties) + { + query = query.Include(includeProperty); + } + + return query.Where(predicate).FirstOrDefault(); + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public virtual void Add(T entity) + { + try + { + DbEntityEntry dbEntityEntry = DbContext.Entry(entity); + DbContext.Set().Add(entity); + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public virtual void Edit(T entity) + { + try + { + DbEntityEntry dbEntityEntry = DbContext.Entry(entity); + dbEntityEntry.State = EntityState.Modified; + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public virtual void Delete(T entity) + { + try + { + DbEntityEntry dbEntityEntry = DbContext.Entry(entity); + dbEntityEntry.State = EntityState.Deleted; + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + /// + /// Delete entities + /// + /// Entities + public virtual void Delete(IEnumerable entities) + { + try + { + if (entities == null) + throw new ArgumentNullException("entities"); + + foreach (var entity in entities) + { + DbEntityEntry dbEntityEntry = DbContext.Entry(entity); + dbEntityEntry.State = EntityState.Deleted; + } + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public virtual void DeleteWhere(Expression> predicate) + { + try + { + IEnumerable entities = DbContext.Set().Where(predicate); + + foreach (var entity in entities) + { + DbContext.Entry(entity).State = EntityState.Deleted; + } + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + public virtual void Commit() + { + try + { + dataContext.SaveChanges(); + } + catch (DbEntityValidationException dbEx) + { + throw new Exception(GetFullErrorText(dbEx), dbEx); + } + } + + #region Properties + + /// + /// Gets a table + /// + public virtual IQueryable Table + { + get + { + return this.Entities; + } + } + + /// + /// Gets a table with "no tracking" enabled (EF feature) Use it only when you load record(s) only for read-only operations + /// + public virtual IQueryable TableNoTracking + { + get + { + return this.Entities.AsNoTracking(); + } + } + + /// + /// Entities + /// + protected virtual IDbSet Entities + { + get + { + if (_entities == null) + _entities = DbContext.Set(); + return _entities; + } + } + + #endregion Properties + } +} \ No newline at end of file diff --git a/HomeCinema.Data/bin/Debug/EntityFramework.SqlServer.dll b/HomeCinema.Data/bin/Debug/EntityFramework.SqlServer.dll new file mode 100644 index 00000000..481c1c7c Binary files /dev/null and b/HomeCinema.Data/bin/Debug/EntityFramework.SqlServer.dll differ diff --git a/HomeCinema.Data/bin/Debug/EntityFramework.SqlServer.xml b/HomeCinema.Data/bin/Debug/EntityFramework.SqlServer.xml new file mode 100644 index 00000000..1851514e --- /dev/null +++ b/HomeCinema.Data/bin/Debug/EntityFramework.SqlServer.xml @@ -0,0 +1,2048 @@ + + + + EntityFramework.SqlServer + + + + + Contains extension methods for the class. + + + + + Configures an awaiter used to await this to avoid + marshalling the continuation + back to the original context, but preserve the current culture and UI culture. + + + The type of the result produced by the associated . + + The task to be awaited on. + An object used to await this task. + + + + Configures an awaiter used to await this to avoid + marshalling the continuation + back to the original context, but preserve the current culture and UI culture. + + The task to be awaited on. + An object used to await this task. + + + + Provides an awaitable object that allows for awaits on that + preserve the culture. + + + The type of the result produced by the associated . + + This type is intended for compiler use only. + + + + Constructs a new instance of the class. + + The task to be awaited on. + + + Gets an awaiter used to await this . + An awaiter instance. + This method is intended for compiler user rather than use directly in code. + + + Ends the await on the completed . + The result of the completed . + The awaiter was not properly initialized. + The task was canceled. + The task completed in a Faulted state. + + + This method is not implemented and should not be called. + The action to invoke when the await operation completes. + + + + Schedules the continuation onto the associated with this + . + + The action to invoke when the await operation completes. + + The argument is null + (Nothing in Visual Basic). + + The awaiter was not properly initialized. + This method is intended for compiler user rather than use directly in code. + + + + Gets whether this Task has completed. + + + will return true when the Task is in one of the three + final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Provides an awaitable object that allows for awaits on that + preserve the culture. + + This type is intended for compiler use only. + + + + Constructs a new instance of the class. + + The task to be awaited on. + + + Gets an awaiter used to await this . + An awaiter instance. + This method is intended for compiler user rather than use directly in code. + + + Ends the await on the completed . + The awaiter was not properly initialized. + The task was canceled. + The task completed in a Faulted state. + + + This method is not implemented and should not be called. + The action to invoke when the await operation completes. + + + + Schedules the continuation onto the associated with this + . + + The action to invoke when the await operation completes. + + The argument is null + (Nothing in Visual Basic). + + The awaiter was not properly initialized. + This method is intended for compiler user rather than use directly in code. + + + + Gets whether this Task has completed. + + + will return true when the Task is in one of the three + final states: RanToCompletion, + Faulted, or + Canceled. + + + + + An that retries actions that throw exceptions caused by SQL Azure transient failures. + + + This execution strategy will retry the operation on and + if the contains any of the following error numbers: + 40613, 40501, 40197, 10929, 10928, 10060, 10054, 10053, 233, 64 and 20 + + + + + Creates a new instance of . + + + The default retry limit is 5, which means that the total amount of time spent between retries is 26 seconds plus the random factor. + + + + + Creates a new instance of with the specified limits for + number of retries and the delay between retries. + + The maximum number of retry attempts. + The maximum delay in milliseconds between retries. + + + + + + + Contains function stubs that expose SqlServer methods in Linq to Entities. + + + + Returns the checksum of the values in a collection. Null values are ignored. + The checksum computed from the input collection. + The collection of values over which the checksum is computed. + + + Returns the checksum of the values in a collection. Null values are ignored. + The checksum computed from the input collection. + The collection of values over which the checksum is computed. + + + Returns the ASCII code value of the left-most character of a character expression. + The ASCII code of the first character in the input string. + A valid string. + + + Returns the character that corresponds to the specified integer ASCII value. + The character that corresponds to the specified ASCII value. + An ASCII code. + + + Returns the starting position of one expression found within another expression. + The starting position of target if it is found in toSearch . + The string expression to be searched. + The string expression to be found. + + + Returns the starting position of one expression found within another expression. + The starting position of target if it is found in toSearch . + The string expression to be searched. + The string expression to be found. + + + Returns the starting position of one expression found within another expression. + The starting position of target if it is found in toSearch . + The string expression to be searched. + The string expression to be found. + The character position in toSearch where searching begins. + + + Returns the starting position of one expression found within another expression. + The starting position of target if it is found in toSearch . + The string expression to be searched. + The string expression to be found. + The character position in toSearch where searching begins. + + + Returns the starting position of one expression found within another expression. + + A of value that is the starting position of target if it is found in toSearch . + + The string expression to be searched. + The string expression to be found. + The character position in toSearch where searching begins. + + + Returns the starting position of one expression found within another expression. + The starting position of target if it is found in toSearch . + The string expression to be searched. + The string expression to be found. + The character position in toSearch at which searching begins. + + + Returns an integer value that indicates the difference between the SOUNDEX values of two character expressions. + The SOUNDEX difference between the two strings. + The first string. + The second string. + + + Returns the Unicode character with the specified integer code, as defined by the Unicode standard. + The character that corresponds to the input character code. + A character code. + + + Returns the starting position of the first occurrence of a pattern in a specified expression, or zeros if the pattern is not found, on all valid text and character data types. + The starting character position where the string pattern was found. + A string pattern to search for. + The string to search. + + + Returns a Unicode string with the delimiters added to make the input string a valid Microsoft SQL Server delimited identifier. + The original string with brackets added. + The expression that quote characters will be added to. + + + Returns a Unicode string with the delimiters added to make the input string a valid Microsoft SQL Server delimited identifier. + The original string with the specified quote characters added. + The expression that quote characters will be added to. + The one-character string to use as the delimiter. It can be a single quotation mark ( ' ), a left or right bracket ( [ ] ), or a double quotation mark ( " ). If quote_character is not specified, brackets are used. + + + Repeats a string value a specified number of times. + The target string, repeated the number of times specified by count . + A valid string. + The value that specifies how many time to repeat target . + + + Converts an alphanumeric string to a four-character (SOUNDEX) code to find similar-sounding words or names. + The SOUNDEX code of the input string. + A valid string. + + + Returns a string of repeated spaces. + A string that consists of the specified number of spaces. + The number of spaces. If negative, a null string is returned. + + + Returns character data converted from numeric data. + The numeric input expression converted to a string. + A numeric expression. + + + Returns character data converted from numeric data. + The input expression converted to a string. + A numeric expression. + + + Returns character data converted from numeric data. + The numeric input expression converted to a string. + A numeric expression. + The total length of the string. This includes decimal point, sign, digits, and spaces. The default is 10. + + + Returns character data converted from numeric data. + The input expression converted to a string. + A numeric expression. + The total length of the string. This includes decimal point, sign, digits, and spaces. The default is 10. + + + Returns character data converted from numeric data. + The numeric input expression converted to a string. + A numeric expression. + The total length of the string. This includes decimal point, sign, digits, and spaces. The default is 10. + The number of places to the right of the decimal point. decimal must be less than or equal to 16. If decimal is more than 16 then the result is truncated to sixteen places to the right of the decimal point. + + + Returns character data converted from numeric data. + The input expression converted to a string. + A numeric expression. + The total length of the string. This includes decimal point, sign, digits, and spaces. The default is 10. + The number of places to the right of the decimal point. decimal must be less than or equal to 16. If decimal is more than 16 then the result is truncated to sixteen places to the right of the decimal point. + + + Inserts a string into another string. It deletes a specified length of characters in the target string at the start position and then inserts the second string into the target string at the start position. + A string consisting of the two strings. + The target string. + The character position in stringinput where the replacement string is to be inserted. + The number of characters to delete from stringInput . If length is longer than stringInput , deletion occurs up to the last character in stringReplacement . + The substring to be inserted into stringInput . + + + Returns the integer value, as defined by the Unicode standard, for the first character of the input expression. + The character code for the first character in the input string. + A valid string. + + + A mathematical function that returns the angle, in radians, whose cosine is the specified numerical value. This angle is called the arccosine. + The angle, in radians, defined by the input cosine value. + The cosine of an angle. + + + A mathematical function that returns the angle, in radians, whose cosine is the specified numerical value. This angle is called the arccosine. + An angle, measured in radians. + The cosine of an angle. + + + A mathematical function that returns the angle, in radians, whose sine is the specified numerical value. This angle is called the arcsine. + An angle, measured in radians. + The sine of an angle. + + + A mathematical function that returns the angle, in radians, whose sine is the specified numerical value. This angle is called the arcsine. + An angle, measured in radians. + The sine of an angle. + + + A mathematical function that returns the angle, in radians, whose tangent is the specified numerical value. This angle is called the arctangent. + An angle, measured in radians. + The tangent of an angle. + + + A mathematical function that returns the angle, in radians, whose tangent is the specified numerical value. This angle is called the arctangent. + An angle, measured in radians. + The tangent of an angle. + + + Returns the positive angle, in radians, between the positive x-axis and the ray from the origin through the point (x, y), where x and y are the two specified numerical values. The first parameter passed to the function is the y-value and the second parameter is the x-value. + An angle, measured in radians. + The y-coordinate of a point. + The x-coordinate of a point. + + + Returns the positive angle, in radians, between the positive x-axis and the ray from the origin through the point (x, y), where x and y are the two specified numerical values. The first parameter passed to the function is the y-value and the second parameter is the x-value. + An angle, measured in radians. + The y-coordinate of a point. + The x-coordinate of a point. + + + Returns the trigonometric cosine of the specified angle, in radians, in the specified expression. + The trigonometric cosine of the specified angle. + An angle, measured in radians. + + + Returns the trigonometric cosine of the specified angle, in radians, in the specified expression. + The trigonometric cosine of the specified angle. + An angle, measured in radians. + + + A mathematical function that returns the trigonometric cotangent of the specified angle, in radians. + The trigonometric cotangent of the specified angle. + An angle, measured in radians. + + + A mathematical function that returns the trigonometric cotangent of the specified angle, in radians. + The trigonometric cotangent of the specified angle. + An angle, measured in radians. + + + Returns the corresponding angle in degrees for an angle specified in radians. + The specified angle converted to degrees. + An angle, measured in radians. + + + Returns the corresponding angle in degrees for an angle specified in radians. + The specified angle converted to degrees. + An angle, measured in radians. + + + Returns the corresponding angle in degrees for an angle specified in radians. + The specified angle converted to degrees. + An angle, measured in radians. + + + Returns the corresponding angle in degrees for an angle specified in radians. + The specified angle converted to degrees. + An angle, measured in radians. + + + Returns the exponential value of the specified float expression. + The constant e raised to the power of the input value. + The input value. + + + Returns the exponential value of the specified float expression. + The constant e raised to the power of the input value. + The input value. + + + Returns the natural logarithm of the specified input value. + The natural logarithm of the input value. + A numeric expression. + + + Returns the natural logarithm of the specified input value. + The natural logarithm of the input value. + A numeric expression. + + + Returns the base-10 logarithm of the specified input value. + The base-10 logarithm of the input value. + A numeric expression. + + + Returns the base-10 logarithm of the specified input value. + The base-10 logarithm of the input value. + A numeric expression. + + + Returns the constant value of pi. + The numeric value of pi. + + + Returns the radian measure corresponding to the specified angle in degrees. + The radian measure of the specified angle. + The angle, measured in degrees + + + Returns the radian measure corresponding to the specified angle in degrees. + The radian measure of the specified angle. + The angle, measured in degrees + + + Returns the radian measure corresponding to the specified angle in degrees. + The radian measure of the specified angle. + The angle, measured in degrees. + + + Returns the radian measure corresponding to the specified angle in degrees. + The radian measure of the specified angle. + The angle, measured in degrees. + + + Returns a pseudo-random float value from 0 through 1, exclusive. + The pseudo-random value. + + + Returns a pseudo-random float value from 0 through 1, exclusive. + The pseudo-random value. + The seed value. If seed is not specified, the SQL Server Database Engine assigns a seed value at random. For a specified seed value, the result returned is always the same. + + + Returns the positive (+1), zero (0), or negative (-1) sign of the specified expression. + The sign of the input expression. + A numeric expression. + + + Returns the positive (+1), zero (0), or negative (-1) sign of the specified expression. + The sign of the input expression. + A numeric expression. + + + Returns the positive (+1), zero (0), or negative (-1) sign of the specified expression. + The sign of the input expression. + A numeric expression. + + + Returns the positive (+1), zero (0), or negative (-1) sign of the specified expression. + The sign of the input expression. + A numeric expression. + + + Returns the trigonometric sine of the specified angle. + The trigonometric sine of the input expression. + An angle, measured in radians. + + + Returns the trigonometric sine of the specified angle. + The trigonometric sine of the input expression. + An angle, measured in radians. + + + Returns the square root of the specified number. + The square root of the input value. + A numeric expression. + + + Returns the square root of the specified number. + The square root of the input value. + A numeric expression. + + + Returns the square of the specified number. + The square of the input value. + A numeric expression. + + + Returns the square of the specified number. + The square of the input value. + A numeric expression. + + + Returns the trigonometric tangent of the input expression. + The tangent of the input angle. + An angle, measured in radians. + + + Returns the trigonometric tangent of the input expression. + The tangent of the input angle. + An angle, measured in radians. + + + Returns a new datetime value based on adding an interval to the specified date. + The new date. + The part of the date to increment. + The value used to increment a date by a specified amount. + The date to increment. + + + Returns a new time span value based on adding an interval to the specified time span. + The new time span. + The part of the date to increment. + The value used to increment a date by a specified amount. + The time span to increment. + + + Returns a new date value based on adding an interval to the specified date. + The new point in time, expressed as a date and time of day, relative to Coordinated Universal Time (UTC). + The part of the date to increment. + The value used to increment a date by a specified amount. + The date to increment. + + + Returns a new datetime value based on adding an interval to the specified date. + + A of value that is the new date. + + The part of the date to increment. + The value used to increment a date by a specified amount. + The date to increment. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The value specifying the number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two Dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns the count of the specified datepart boundaries crossed between the specified start date and end date. + The number of time intervals between the two dates. + The part of the date to calculate the differing number of time intervals. + The first date. + The second date. + + + Returns a character string that represents the specified datepart of the specified date. + The specified part of the specified date. + The part of the date to calculate the differing number of time intervals. + The date. + + + Returns a character string that represents the specified datepart of the specified date. + The specified part of the specified date. + The part of the date to calculate the differing number of time intervals. + The date. + + + Returns a character string that represents the specified datepart of the specified date. + The specified part of the specified date. + The part of the date to calculate the differing number of time intervals. + The date. + + + Returns a character string that represents the specified datepart of the specified date. + The specified part of the specified date. + The part of the date to calculate the differing number of time intervals. + The date. + + + Returns an integer that represents the specified datepart of the specified date. + The the specified datepart of the specified date. + The part of the date to return the value. + The date. + + + Returns an integer that represents the specified datepart of the specified date. + The specified datepart of the specified date. + The part of the date to return the value. + The date. + + + Returns an integer that represents the specified datepart of the specified date. + The specified datepart of the specified date. + The part of the date to return the value. + The date. + + + Returns an integer that represents the specified datepart of the specified date. + The specified datepart of the specified date. + The part of the date to return the value. + The date. + + + Returns the current database system timestamp as a datetime value without the database time zone offset. This value is derived from the operating system of the computer on which the instance of SQL Server is running. + The current database timestamp. + + + Returns the current database system timestamp as a datetime value. The database time zone offset is not included. This value represents the current UTC time (Coordinated Universal Time). This value is derived from the operating system of the computer on which the instance of SQL Server is running. + The current database UTC timestamp. + + + Returns the number of bytes used to represent any expression. + The number of bytes in the input value. + The value to be examined for data length. + + + Returns the number of bytes used to represent any expression. + The number of bytes in the input value. + The value to be examined for data length. + + + Returns the number of bytes used to represent any expression. + The number of bytes in the input value. + The value to be examined for data length. + + + Returns the number of bytes used to represent any expression. + The number of bytes in the input value. + The value to be examined for data length. + + + Returns the number of bytes used to represent any expression. + The number of bytes in the input value. + The value to be examined for data length. + + + Returns the number of bytes used to represent any expression. + The number of bytes in the input value. + The value to be examined for data length. + + + Returns the number of bytes used to represent any expression. + The number of bytes in the input value. + The value to be examined for data length. + + + Returns the number of bytes used to represent any expression. + The number of bytes in the input value. + The value to be examined for length. + + + Returns the number of bytes used to represent any expression. + The number of bytes in the input value. + The value to be examined for data length. + + + Returns the checksum value computed over the input argument. + The checksum computed over the input value. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input argument. + The checksum computed over the input value. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input argument. + The checksum computed over the input value. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input argument. + The checksum computed over the input value. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input argument. + The checksum computed over the input values. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input argument. + The checksum computed over the input value. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input argument. + The checksum computed over the input value. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input argument. + The checksum computed over the input value. + The character array for which the checksum is calculated. + + + Returns the checksum value computed over the input argument. + The checksum computed over the input value. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The character array for which the checksum is calculated. + The character array for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The character array for which the checksum is calculated. + The character array for which the checksum is calculated. + The character array for which the checksum is calculated. + + + Returns the checksum value computed over the input arguments. + The checksum computed over the input values. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + The value for which the checksum is calculated. + + + Returns the current date and time. + The current date and time. + + + Returns the name of the current user. + The name of the current user. + + + Returns the workstation name. + The name of the workstation. + + + Returns a database user name corresponding to a specified identification number. + The user name. + A user ID. + + + Returns a database user name corresponding to a specified identification number. + The user name. + + + Indicates whether the input value is a valid numeric type. + 1 if the input expression is a valid numeric data type; otherwise, 0. + A string expression. + + + Indicates whether the input value is a valid date or time. + 1 if the input expression is a valid date or time value of datetime or smalldatetime data types; otherwise, 0. + The tested value. + + + + Provider to convert provider agnostic migration operations into SQL commands + that can be run against a Microsoft SQL Server database. + + + + + Converts a set of migration operations into Microsoft SQL Server specific SQL. + + The operations to be converted. + Token representing the version of SQL Server being targeted (i.e. "2005", "2008"). + A list of SQL statements to be executed to perform the migration operations. + + + + Generates the SQL body for a stored procedure. + + The command trees representing the commands for an insert, update or delete operation. + The rows affected parameter name. + The provider manifest token. + The SQL body for the stored procedure. + + + + Generates the specified update database operation which represents applying a series of migrations. + The generated script is idempotent, meaning it contains conditional logic to check if individual migrations + have already been applied and only apply the pending ones. + + The update database operation. + + + + Generates SQL for a . + Allows derived providers to handle additional operation types. + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Creates an empty connection for the current provider. + Allows derived providers to use connection other than . + + An empty connection for the current provider. + + + + Generates the specified create procedure operation. + + The create procedure operation. + + + + Generates the specified alter procedure operation. + + The alter procedure operation. + + + + Generates the specified drop procedure operation. + + The drop procedure operation. + + + + Generates SQL for a . This method differs from + in that it will + create the target database schema if it does not already exist. + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Writes CREATE TABLE SQL to the target writer. + + The operation to produce SQL for. + The target writer. + + + + Override this method to generate SQL when the definition of a table or its attributes are changed. + The default implementation of this method does nothing. + + The operation describing changes to the table. + + + + Generates SQL to mark a table as a system table. + Generated SQL should be added using the Statement method. + + The table to mark as a system table. + The to write the generated SQL to. + + + + Generates SQL to create a database schema. + Generated SQL should be added using the Statement method. + + The name of the schema to create. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Call this method to generate SQL that will attempt to drop the default constraint created + when a column is created. This method is usually called by code that overrides the creation or + altering of columns. + + The table to which the constraint applies. + The column to which the constraint applies. + The writer to which generated SQL should be written. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement or StatementBatch methods. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates the specified rename procedure operation. + + The rename procedure operation. + + + + Generates the specified move procedure operation. + + The move procedure operation. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL for the given column model. This method is called by other methods that + process columns and can be overridden to change the SQL generated. + + The column for which SQL is being generated. + The writer to which generated SQL should be written. + + + + Generates SQL for a . + Generated SQL should be added using the Statement method. + + The operation to produce SQL for. + + + + Generates SQL to specify a constant byte[] default value being set on a column. + This method just generates the actual value, not the SQL to set the default value. + + The value to be set. + SQL representing the default value. + + + + Generates SQL to specify a constant bool default value being set on a column. + This method just generates the actual value, not the SQL to set the default value. + + The value to be set. + SQL representing the default value. + + + + Generates SQL to specify a constant DateTime default value being set on a column. + This method just generates the actual value, not the SQL to set the default value. + + The value to be set. + SQL representing the default value. + + + + Generates SQL to specify a constant DateTimeOffset default value being set on a column. + This method just generates the actual value, not the SQL to set the default value. + + The value to be set. + SQL representing the default value. + + + + Generates SQL to specify a constant Guid default value being set on a column. + This method just generates the actual value, not the SQL to set the default value. + + The value to be set. + SQL representing the default value. + + + + Generates SQL to specify a constant string default value being set on a column. + This method just generates the actual value, not the SQL to set the default value. + + The value to be set. + SQL representing the default value. + + + + Generates SQL to specify a constant TimeSpan default value being set on a column. + This method just generates the actual value, not the SQL to set the default value. + + The value to be set. + SQL representing the default value. + + + + Generates SQL to specify a constant geogrpahy default value being set on a column. + This method just generates the actual value, not the SQL to set the default value. + + The value to be set. + SQL representing the default value. + + + + Generates SQL to specify a constant geometry default value being set on a column. + This method just generates the actual value, not the SQL to set the default value. + + The value to be set. + SQL representing the default value. + + + + Generates SQL to specify a constant default value being set on a column. + This method just generates the actual value, not the SQL to set the default value. + + The value to be set. + SQL representing the default value. + + + + Generates SQL to specify the data type of a column. + This method just generates the actual type, not the SQL to create the column. + + The definition of the column. + SQL representing the data type. + + + + Generates a quoted name. The supplied name may or may not contain the schema. + + The name to be quoted. + The quoted name. + + + + Quotes an identifier for SQL Server. + + The identifier to be quoted. + The quoted identifier. + + + + Adds a new Statement to be executed against the database. + + The statement to be executed. + Gets or sets a value indicating whether this statement should be performed outside of the transaction scope that is used to make the migration process transactional. If set to true, this operation will not be rolled back if the migration process fails. + The batch terminator for the database provider. + + + + Gets a new that can be used to build SQL. + This is just a helper method to create a writer. Writing to the writer will + not cause SQL to be registered for execution. You must pass the generated + SQL to the Statement method. + + An empty text writer to use for SQL generation. + + + + Adds a new Statement to be executed against the database. + + The writer containing the SQL to be executed. + The batch terminator for the database provider. + + + + Breaks sql string into one or more statements, handling T-SQL utility statements as necessary. + + The SQL to split into one ore more statements to be executed. + Gets or sets a value indicating whether this statement should be performed outside of the transaction scope that is used to make the migration process transactional. If set to true, this operation will not be rolled back if the migration process fails. + + + + Returns the column default value to use for store-generated GUID columns when + no default value is explicitly specified in the migration. + Returns newsequentialid() for on-premises SQL Server 2005 and later. + Returns newid() for SQL Azure. + + Either newsequentialid() or newid() as described above. + + + + Contains function stubs that expose SqlServer methods in Linq to Entities. + + + + Constructs a geography instance representing a Point instance from its x and y values and a spatial reference ID (SRID). + The constructed geography instance. + The x-coordinate of the Point being generated. + The y-coordinate of the Point being generated + The SRID of the geography instance. + + + Returns the Open Geospatial Consortium (OGC) Well-Known Text (WKT) representation of a geography instance augmented with any Z (elevation) and M (measure) values carried by the instance. + The Open Geospatial Consortium (OGC) Well-Known Text (WKT) representation of a geography instance. + The geography value. + + + Returns a geometric object representing the union of all point values whose distance from a geography instance is less than or equal to a specified value, allowing for a specified tolerance. + The union of all point values whose distance from a geography instance is less than or equal to a specified value + The geography value. + The distance. + The specified tolerance. + Specifying whether the tolerance value is relative or absolute. + + + Returns the maximum angle between the point returned by EnvelopeCenter() and a point in the geography instance in degrees. + the maximum angle between the point returned by EnvelopeCenter(). + The geography value. + + + Returns a point that can be used as the center of a bounding circle for the geography instance. + A SqlGeography value that specifies the location of the center of a bounding circle. + The geography value. + + + Offers a fast, index-only intersection method to determine if a geography instance intersects another SqlGeography instance, assuming an index is available. + True if a geography instance potentially intersects another SqlGeography instance; otherwise, false. + The geography value. + Another geography instance to compare against the instance on which Filter is invoked. + + + Tests if the SqlGeography instance is the same as the specified type. + A string that specifies one of the 12 types exposed in the geography type hierarchy. + The geography value. + A string that specifies one of the 12 types exposed in the geography type hierarchy. + + + Returns the total number of rings in a Polygon instance. + The total number of rings. + The geography value. + + + Returns an approximation of the given geography instance produced by running the Douglas-Peucker algorithm on the instance with the given tolerance. + + Returns . + + The geography value. + The tolerance to input to the Douglas-Peucker algorithm. tolerance must be a positive number. + + + Returns the specified ring of the SqlGeography instance: 1 ≤ n ≤ NumRings(). + A SqlGeography object that represents the ring specified by n. + The geography value. + An int expression between 1 and the number of rings in a polygon instance. + + + Constructs a geometry instance representing a Point instance from its x and y values and a spatial reference ID (SRID). + The constructed geometry instance. + The x-coordinate of the Point being generated. + The y-coordinate of the Point being generated + The SRID of the geography instance. + + + Returns the Open Geospatial Consortium (OGC) Well-Known Text (WKT) representation of a geography instance augmented with any Z (elevation) and M (measure) values carried by the instance. + The Open Geospatial Consortium (OGC) Well-Known Text (WKT) representation of a geometry instance. + The geometry value. + + + Returns a geometric object representing the union of all point values whose distance from a geometry instance is less than or equal to a specified value, allowing for a specified tolerance. + The union of all point values whose distance from a geometry instance is less than or equal to a specified value + The geometry value. + The distance. + The specified tolerance. + Specifying whether the tolerance value is relative or absolute. + + + Tests if the SqlGeometry instance is the same as the specified type. + A string that specifies one of the 12 types exposed in the geography type hierarchy. + The geometry value. + A string that specifies one of the 12 types exposed in the geography type hierarchy. + + + Offers a fast, index-only intersection method to determine if a geography instance intersects another SqlGeometry instance, assuming an index is available. + True if a geography instance potentially intersects another SqlGeography instance; otherwise, false. + The geometry value. + Another geography instance to compare against the instance on which Filter is invoked. + + + Converts an invalid geometry instance into a geometry instance with a valid Open Geospatial Consortium (OGC) type. + The converted geometry instance. + The geometry value. + + + Returns an approximation of the given geography instance produced by running the Douglas-Peucker algorithm on the instance with the given tolerance. + + Returns . + + The geometry value. + The tolerance to input to the Douglas-Peucker algorithm. tolerance must be a positive number. + + + + The DbProviderServices implementation for the SqlClient provider for SQL Server. + + + Note that instance of this type also resolve additional provider services for Microsoft SQL Server + when this type is registered as an EF provider either using an entry in the application's config file + or through code-based registration in . + The services resolved are: + Requests for are resolved to a Singleton instance of + to create connections to SQL Express by default. + Requests for for the invariant name "System.Data.SqlClient" + for any server name are resolved to a delegate that returns a + to provide a non-retrying policy for SQL Server. + Requests for for the invariant name "System.Data.SqlClient" are + resolved to instances to provide default Migrations SQL + generation for SQL Server. + Requests for for the invariant name "System.Data.SqlClient" are + resolved to a Singleton instance of to provide default spatial + services for SQL Server. + + + + + This is the well-known string using in configuration files and code-based configuration as + the "provider invariant name" used to specify Microsoft SQL Server for ADO.NET and + Entity Framework provider services. + + + + + Registers a handler to process non-error messages coming from the database provider. + + The connection to receive information for. + The handler to process messages. + + + + Create a Command Definition object, given the connection and command tree + + provider manifest that was determined from metadata + command tree for the statement + an executable command definition object + + + + See issue 2390 - cloning the DesignTimeVisible property on the + can cause deadlocks. + So here overriding to provide a method that does not clone DesignTimeVisible. + + the object to clone + a clone of the + + + + Sets the parameter value and appropriate facets for the given . + + The parameter. + The type of the parameter. + The value of the parameter. + + + + Returns provider manifest token for a given connection. + + Connection to find manifest token from. + The provider manifest token for the specified connection. + + + + Returns the provider manifest by using the specified version information. + + The token information associated with the provider manifest. + The provider manifest by using the specified version information. + + + + Gets a spatial data reader for SQL Server. + + The reader where the spatial data came from. + The manifest token associated with the provider manifest. + The spatial data reader. + + + + Gets a spatial data reader for SQL Server. + + The manifest token associated with the provider manifest. + The spatial data reader. + + + + Generates a data definition language (DDL) script that creates schema objects + (tables, primary keys, foreign keys) based on the contents of the StoreItemCollection + parameter and targeted for the version of the database corresponding to the provider manifest token. + + The provider manifest token identifying the target version. + The structure of the database. + + A DDL script that creates schema objects based on the contents of the StoreItemCollection parameter + and targeted for the version of the database corresponding to the provider manifest token. + + + + + Create the database and the database objects. + If initial catalog is not specified, but AttachDBFilename is specified, we generate a random database name based on the AttachDBFilename. + Note: this causes pollution of the db, as when the connection string is later used, the mdf will get attached under a different name. + However if we try to replicate the name under which it would be attached, the following scenario would fail: + The file does not exist, but registered with database. + The user calls: If (DatabaseExists) DeleteDatabase + CreateDatabase + For further details on the behavior when AttachDBFilename is specified see Dev10# 188936 + + Connection to a non-existent database that needs to be created and populated with the store objects indicated with the storeItemCollection parameter. + Execution timeout for any commands needed to create the database. + The collection of all store items based on which the script should be created. + + + + Determines whether the database for the given connection exists. + There are three cases: + 1. Initial Catalog = X, AttachDBFilename = null: (SELECT Count(*) FROM sys.databases WHERE [name]= X) > 0 + 2. Initial Catalog = X, AttachDBFilename = F: if (SELECT Count(*) FROM sys.databases WHERE [name]= X) > true, + if not, try to open the connection and then return (SELECT Count(*) FROM sys.databases WHERE [name]= X) > 0 + 3. Initial Catalog = null, AttachDBFilename = F: Try to open the connection. If that succeeds the result is true, otherwise + if the there are no databases corresponding to the given file return false, otherwise throw. + Note: We open the connection to cover the scenario when the mdf exists, but is not attached. + Given that opening the connection would auto-attach it, it would not be appropriate to return false in this case. + Also note that checking for the existence of the file does not work for a remote server. (Dev11 #290487) + For further details on the behavior when AttachDBFilename is specified see Dev10# 188936 + + Connection to a database whose existence is checked by this method. + Execution timeout for any commands needed to determine the existence of the database. + The collection of all store items from the model. This parameter is no longer used for determining database existence. + True if the provider can deduce the database only based on the connection. + + + + Determines whether the database for the given connection exists. + There are three cases: + 1. Initial Catalog = X, AttachDBFilename = null: (SELECT Count(*) FROM sys.databases WHERE [name]= X) > 0 + 2. Initial Catalog = X, AttachDBFilename = F: if (SELECT Count(*) FROM sys.databases WHERE [name]= X) > true, + if not, try to open the connection and then return (SELECT Count(*) FROM sys.databases WHERE [name]= X) > 0 + 3. Initial Catalog = null, AttachDBFilename = F: Try to open the connection. If that succeeds the result is true, otherwise + if the there are no databases corresponding to the given file return false, otherwise throw. + Note: We open the connection to cover the scenario when the mdf exists, but is not attached. + Given that opening the connection would auto-attach it, it would not be appropriate to return false in this case. + Also note that checking for the existence of the file does not work for a remote server. (Dev11 #290487) + For further details on the behavior when AttachDBFilename is specified see Dev10# 188936 + + Connection to a database whose existence is checked by this method. + Execution timeout for any commands needed to determine the existence of the database. + The collection of all store items from the model. This parameter is no longer used for determining database existence. + True if the provider can deduce the database only based on the connection. + + + + Delete the database for the given connection. + There are three cases: + 1. If Initial Catalog is specified (X) drop database X + 2. Else if AttachDBFilename is specified (F) drop all the databases corresponding to F + if none throw + 3. If niether the catalog not the file name is specified - throw + Note that directly deleting the files does not work for a remote server. However, even for not attached + databases the current logic would work assuming the user does: if (DatabaseExists) DeleteDatabase + + Connection + Timeout for internal commands. + Item Collection. + + + + The Singleton instance of the SqlProviderServices type. + + + + + Set to the full name of the Microsoft.SqlServer.Types assembly to override the default selection + + + + + Set this flag to false to prevent values from being truncated to + the scale (number of decimal places) defined for the column. The default value is true, + indicating that decimal values will be truncated, in order to prevent breaking existing + applications that depend on this behavior. + + + With this flag set to true objects are created with their Scale + properties set. When this flag is set to false then the Scale properties are not set, meaning + that the truncation behavior of SqlParameter is avoided. + + + + + An implementation of to provide support for geospatial types when using + Entity Framework with Microsoft SQL Server. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/HomeCinema.Data/bin/Debug/EntityFramework.dll b/HomeCinema.Data/bin/Debug/EntityFramework.dll new file mode 100644 index 00000000..774321af Binary files /dev/null and b/HomeCinema.Data/bin/Debug/EntityFramework.dll differ diff --git a/HomeCinema.Data/bin/Debug/EntityFramework.xml b/HomeCinema.Data/bin/Debug/EntityFramework.xml new file mode 100644 index 00000000..b231108f --- /dev/null +++ b/HomeCinema.Data/bin/Debug/EntityFramework.xml @@ -0,0 +1,52816 @@ + + + + EntityFramework + + + + + Represents a result mapping for a function import. + + + + + Base class for items in the mapping space (DataSpace.CSSpace) + + + + + Adds a type mapping. + + The type mapping to add. + + + + Removes a type mapping. + + The type mapping to remove. + + + + Gets the type mappings. + + + + + Specifies a mapping condition evaluated by checking whether the value + of the a property/column is null or not null. + + + + + Mapping metadata for Conditional property mapping on a type. + Condition Property Mapping specifies a Condition either on the C side property or S side property. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ConditionProperyMap ( constant value-->SMemberMetadata ) + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ComplexPropertyMap + --ComplexTypeMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --ConditionProperyMap ( constant value-->SMemberMetadata ) + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + --EndPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --EndPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + This class represents the metadata for all the condition property map elements in the + above example. + + + + + Mapping metadata for all types of property mappings. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap + --ScalarPropertyMap + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap + --ComplexPropertyMap + --ScalarPropertyMap + --ScalarProperyMap + --ScalarPropertyMap + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + --EndPropertyMap + --ScalarPropertyMap + --ScalarProperyMap + --EndPropertyMap + --ScalarPropertyMap + This class represents the metadata for all property map elements in the + above example. This includes the scalar property maps, complex property maps + and end property maps. + + + + + Gets an EdmProperty that specifies the mapped property. + + + + + Gets an EdmProperty that specifies the mapped property. + + + + + Gets an EdmProperty that specifies the mapped column. + + + + + Creates an IsNullConditionMapping instance. + + An EdmProperty that specifies a property or column. + A boolean that indicates whether to perform a null or a not-null check. + + + + Gets a bool that specifies whether the condition is evaluated by performing a null check + or a not-null check. + + + + + Specifies a mapping condition evaluated by comparing the value of + a property or column with a given value. + + + + + Creates a ValueConditionMapping instance. + + An EdmProperty that specifies a property or column. + An object that specifies the value to compare with. + + + + Gets an object that specifies the value to check against. + + + + + Serializes an that conforms to the restrictions of a single + CSDL schema file to an XML writer. The model to be serialized must contain a single + . + + + + + Serialize the to the XmlWriter. + + + The EdmModel to serialize. + + The XmlWriter to serialize to. + The serialized model's namespace. + true if the model is valid; otherwise, false. + + + + Occurs when an error is encountered serializing the model. + + + + + Information about an error that occurred processing an Entity Framework model. + + + + + Gets an optional value indicating which property of the source item caused the event to be raised. + + + + + Gets an optional descriptive message the describes the error that is being raised. + + + + + Gets a value indicating the that caused the event to be raised. + + + + + Contains additional attributes and properties of the + + + Note that objects are short lived and exist only to + make initialization easier. Instance of this type are not + compared to each other and arrays returned by array properties are copied to internal + collections in the ctor. Therefore it is fine to suppress the + Code Analysis messages. + + + + Gets or sets the function schema. + The function schema. + + + Gets or sets the store function name. + The store function name. + + + Gets or sets the command text associated with the function. + The command text associated with the function. + + + Gets or sets the entity sets for the function. + The entity sets for the function. + + + Gets a value that indicates whether this is an aggregate function. + true if this is an aggregate function; otherwise, false. + + + Gets or sets whether this function is a built-in function. + true if this function is a built-in function; otherwise, false. + + + Gets or sets whether the function contains no arguments. + true if the function contains no arguments; otherwise, false. + + + Gets or sets whether this function can be composed. + true if this function can be composed; otherwise, false. + + + Gets or sets whether this function is from a provider manifest. + true if this function is from a provider manifest; otherwise, false. + + + Gets or sets whether this function is a cached store function. + true if this function is a cached store function; otherwise, false. + + + Gets or sets whether this function is a function import. + true if this function is a function import; otherwise, false. + + + Gets or sets the return parameters. + The return parameters. + + + Gets or sets the parameter type semantics. + The parameter type semantics. + + + Gets or sets the function parameters. + The function parameters. + + + + Serializes the storage (database) section of an to XML. + + + + + Serialize the to the + + The EdmModel to serialize + Provider information on the Schema element + ProviderManifestToken information on the Schema element + The XmlWriter to serialize to + A value indicating whether to serialize Nullable attributes when they are set to the default value. + true if model can be serialized, otherwise false + + + + Serialize the to the + + The EdmModel to serialize + Namespace name on the Schema element + Provider information on the Schema element + ProviderManifestToken information on the Schema element + The XmlWriter to serialize to + A value indicating whether to serialize Nullable attributes when they are set to the default value. + true if model can be serialized, otherwise false + + + + Occurs when an error is encountered serializing the model. + + + + Visits each element of an expression tree from a given root expression. If any element changes, the tree is rebuilt back to the root and the new root expression is returned; otherwise the original root expression is returned. + + + Defines the basic functionality that should be implemented by visitors that return a result value of a specific type. + The type of the result produced by the visitor. + + + When overridden in a derived class, handles any expression of an unrecognized type. + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern method for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + A result value of a specific type. + + The that is being visited. + + + + + Typed visitor pattern method for DbInExpression. + + The DbInExpression that is being visited. + An instance of TResultType. + + + + Initializes a new instance of the + + class. + + + + Replaces an old expression with a new one for the expression visitor. + The old expression. + The new expression. + + + Represents an event when the variable is rebound for the expression visitor. + The location of the variable. + The reference of the variable where it is rebounded. + + + Represents an event when entering the scope for the expression visitor with specified scope variables. + The collection of scope variables. + + + Exits the scope for the expression visitor. + + + Implements the visitor pattern for the expression. + The implemented visitor pattern. + The expression. + + + Implements the visitor pattern for the expression list. + The implemented visitor pattern. + The expression list. + + + Implements the visitor pattern for expression binding. + The implemented visitor pattern. + The expression binding. + + + Implements the visitor pattern for the expression binding list. + The implemented visitor pattern. + The expression binding list. + + + Implements the visitor pattern for the group expression binding. + The implemented visitor pattern. + The binding. + + + Implements the visitor pattern for the sort clause. + The implemented visitor pattern. + The sort clause. + + + Implements the visitor pattern for the sort order. + The implemented visitor pattern. + The sort order. + + + Implements the visitor pattern for the aggregate. + The implemented visitor pattern. + The aggregate. + + + Implements the visitor pattern for the function aggregate. + The implemented visitor pattern. + The aggregate. + + + Implements the visitor pattern for the group aggregate. + The implemented visitor pattern. + The aggregate. + + + Implements the visitor pattern for the Lambda function. + The implemented visitor pattern. + The lambda function. + + + Implements the visitor pattern for the type. + The implemented visitor pattern. + The type. + + + Implements the visitor pattern for the type usage. + The implemented visitor pattern. + The type. + + + Implements the visitor pattern for the entity set. + The implemented visitor pattern. + The entity set. + + + Implements the visitor pattern for the function. + The implemented visitor pattern. + The function metadata. + + + Implements the visitor pattern for the basic functionality required by expression types. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the different kinds of constants. + The implemented visitor. + The constant expression. + + + Implements the visitor pattern for a reference to a typed null literal. + The implemented visitor. + The expression. + + + Implements the visitor pattern for a reference to a variable that is currently in scope. + The implemented visitor. + The expression. + + + Implements the visitor pattern for a reference to a parameter declared on the command tree that contains this expression. + The implemented visitor. + The expression. + + + Implements the visitor pattern for an invocation of a function. + The implemented visitor. + The function expression. + + + Implements the visitor pattern for the application of a lambda function to arguments represented by DbExpression objects. + The implemented visitor. + The expression. + + + Implements the visitor pattern for retrieving an instance property. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the comparison operation applied to two arguments. + The implemented visitor. + The cast expression. + + + Implements the visitor pattern for a string comparison against the specified pattern with an optional escape string. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the restriction of the number of elements in the argument collection to the specified limit value. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the null determination applied to a single argument. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the arithmetic operation applied to numeric arguments. + The implemented visitor. + The arithmetic expression. + + + Implements the visitor pattern for the logical AND expression. + The implemented visitor. + The logical AND expression. + + + Implements the visitor pattern for the logical OR of two Boolean arguments. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the DbInExpression. + The implemented visitor. + The DbInExpression that is being visited. + + + Implements the visitor pattern for the logical NOT of a single Boolean argument. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the removed duplicate elements from the specified set argument. + The implemented visitor. + The distinct expression. + + + Implements the visitor pattern for the conversion of the specified set argument to a singleton the conversion of the specified set argument to a singleton. + The implemented visitor. + The element expression. + + + Implements the visitor pattern for an empty set determination applied to a single set argument. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the set union operation between the left and right operands. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the set intersection operation between the left and right operands. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the set subtraction operation between the left and right operands. + The implemented visitor. + The expression. + + + Implements the visitor pattern for a type conversion operation applied to a polymorphic argument. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the type comparison of a single argument against the specified type. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the type conversion of a single argument to the specified type. + The implemented visitor. + The cast expression. + + + Implements the visitor pattern for the When, Then, and Else clauses. + The implemented visitor. + The case expression. + + + Implements the visitor pattern for the retrieval of elements of the specified type from the given set argument. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the construction of a new instance of a given type, including set and record types. + The implemented visitor. + The expression. + + + Implements the visitor pattern for a strongly typed reference to a specific instance within an entity set. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the navigation of a relationship. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the expression that retrieves an entity based on the specified reference. + The implemented visitor. + The DEREF expression. + + + Implements the visitor pattern for the retrieval of the key value from the underlying reference value. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the expression that extracts a reference from the underlying entity instance. + The implemented visitor. + The entity reference expression. + + + Implements the visitor pattern for a scan over an entity set or relationship set, as indicated by the Target property. + The implemented visitor. + The expression. + + + Implements the visitor pattern for a predicate applied to filter an input set. + The implemented visitor. + The filter expression. + + + Implements the visitor pattern for the projection of a given input set over the specified expression. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the unconditional join operation between the given collection arguments. + The implemented visitor. + The join expression. + + + Implements the visitor pattern for an inner, left outer, or full outer join operation between the given collection arguments on the specified join condition. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the invocation of the specified function for each element in the specified input set. + The implemented visitor. + The APPLY expression. + + + Implements the visitor pattern for a group by operation. + The implemented visitor. + The expression. + + + Implements the visitor pattern for the skip expression. + The implemented visitor. + The expression. + + + Implements the visitor pattern for a sort key that can be used as part of the sort order. + The implemented visitor. + The expression. + + + Implements the visitor pattern for a quantifier operation of the specified kind over the elements of the specified input set. + The implemented visitor. + The expression. + + + + When this attribute is placed on a property it indicates that the database column to which the + property is mapped has an index. + + + This attribute is used by Entity Framework Migrations to create indexes on mapped database columns. + Multi-column indexes are created by using the same index name in multiple attributes. The information + in these attributes is then merged together to specify the actual database index. + + + + + Creates a instance for an index that will be named by convention and + has no column order, clustering, or uniqueness specified. + + + + + Creates a instance for an index with the given name and + has no column order, clustering, or uniqueness specified. + + The index name. + + + + Creates a instance for an index with the given name and column order, + but with no clustering or uniqueness specified. + + + Multi-column indexes are created by using the same index name in multiple attributes. The information + in these attributes is then merged together to specify the actual database index. + + The index name. + A number which will be used to determine column ordering for multi-column indexes. + + + + Returns true if this attribute specifies the same name and configuration as the given attribute. + + The attribute to compare. + True if the other object is equal to this object; otherwise false. + + + + + + + Returns true if this attribute specifies the same name and configuration as the given attribute. + + The attribute to compare. + True if the other object is equal to this object; otherwise false. + + + + + + + The index name. + + + Multi-column indexes are created by using the same index name in multiple attributes. The information + in these attributes is then merged together to specify the actual database index. + + + + + A number which will be used to determine column ordering for multi-column indexes. This will be -1 if no + column order has been specified. + + + Multi-column indexes are created by using the same index name in multiple attributes. The information + in these attributes is then merged together to specify the actual database index. + + + + + Set this property to true to define a clustered index. Set this property to false to define a + non-clustered index. + + + The value of this property is only relevant if returns true. + If returns false, then the value of this property is meaningless. + + + + + Returns true if has been set to a value. + + + + + Set this property to true to define a unique index. Set this property to false to define a + non-unique index. + + + The value of this property is only relevant if returns true. + If returns false, then the value of this property is meaningless. + + + + + Returns true if has been set to a value. + + + + + Returns a different ID for each object instance such that type descriptors won't + attempt to combine all IndexAttribute instances into a single instance. + + + + + A class derived from this class can be placed in the same assembly as a class derived from + to define Entity Framework configuration for an application. + Configuration is set by calling protected methods and setting protected properties of this + class in the constructor of your derived type. + The type to use can also be registered in the config file of the application. + See http://go.microsoft.com/fwlink/?LinkId=260883 for more information about Entity Framework configuration. + + + + + Any class derived from must have a public parameterless constructor + and that constructor should call this constructor. + + + + + The Singleton instance of for this app domain. This can be + set at application start before any Entity Framework features have been used and afterwards + should be treated as read-only. + + The instance of . + + + + Attempts to discover and load the associated with the given + type. This method is intended to be used by tooling to ensure that + the correct configuration is loaded into the app domain. Tooling should use this method + before accessing the property. + + A type to use for configuration discovery. + + + + Attempts to discover and load the from the given assembly. + This method is intended to be used by tooling to ensure that the correct configuration is loaded into + the app domain. Tooling should use this method before accessing the + property. If the tooling knows the type being used, then the + method should be used since it gives a greater chance that + the correct configuration will be found. + + An to use for configuration discovery. + + + + Call this method from the constructor of a class derived from to + add a instance to the Chain of Responsibility of resolvers that + are used to resolve dependencies needed by the Entity Framework. + + + Resolvers are asked to resolve dependencies in reverse order from which they are added. This means + that a resolver can be added to override resolution of a dependency that would already have been + resolved in a different way. + The exceptions to this is that any dependency registered in the application's config file + will always be used in preference to using a dependency resolver added here. + + The resolver to add. + + + + Call this method from the constructor of a class derived from to + add a instance to the Chain of Responsibility of resolvers that + are used to resolve dependencies needed by the Entity Framework. Unlike the AddDependencyResolver + method, this method puts the resolver at the bottom of the Chain of Responsibility such that it will only + be used to resolve a dependency that could not be resolved by any of the other resolvers. + + + A implementation is automatically registered as a default resolver + when it is added with a call to . This allows EF providers to act as + resolvers for other services that may need to be overridden by the provider. + + The resolver to add. + + + + Call this method from the constructor of a class derived from to register + an Entity Framework provider. + + + Note that the provider is both registered as a service itself and also registered as a default resolver with + a call to AddDefaultResolver. This allows EF providers to act as resolvers for other services that + may need to be overridden by the provider. + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + and also using AddDefaultResolver to add the provider as a default + resolver. This means that, if desired, the same functionality can be achieved using a custom resolver or a + resolver backed by an Inversion-of-Control container. + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this provider will be used. + The provider instance. + + + + Call this method from the constructor of a class derived from to register + an ADO.NET provider. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolvers for + and . This means that, if desired, + the same functionality can be achieved using a custom resolver or a resolver backed by an + Inversion-of-Control container. + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this provider will be used. + The provider instance. + + + + Call this method from the constructor of a class derived from to register an + for use with the provider represented by the given invariant name. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this execution strategy will be used. + A function that returns a new instance of an execution strategy. + + + + Call this method from the constructor of a class derived from to register an + for use with the provider represented by the given invariant name and + for a given server name. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this execution strategy will be used. + + A function that returns a new instance of an execution strategy. + A string that will be matched against the server name in the connection string. + + + + Call this method from the constructor of a class derived from to register a + . + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + A function that returns a new instance of a transaction handler. + + + + Call this method from the constructor of a class derived from to register a + for use with the provider represented by the given invariant name. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this transaction handler will be used. + + A function that returns a new instance of a transaction handler. + + + + Call this method from the constructor of a class derived from to register a + for use with the provider represented by the given invariant name and + for a given server name. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this transaction handler will be used. + + A function that returns a new instance of a transaction handler. + A string that will be matched against the server name in the connection string. + + + + Sets the that is used to create connections by convention if no other + connection string or connection is given to or can be discovered by . + Note that a default connection factory is set in the app.config or web.config file whenever the + EntityFramework NuGet package is installed. As for all config file settings, the default connection factory + set in the config file will take precedence over any setting made with this method. Therefore the setting + must be removed from the config file before calling this method will have any effect. + Call this method from the constructor of a class derived from to change + the default connection factory being used. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + The connection factory. + + + + Call this method from the constructor of a class derived from to + set the pluralization service. + + The pluralization service to use. + + + + Call this method from the constructor of a class derived from to + set the database initializer to use for the given context type. The database initializer is called when a + the given type is used to access a database for the first time. + The default strategy for Code First contexts is an instance of . + + + Calling this method is equivalent to calling . + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + The type of the context. + The initializer to use, or null to disable initialization for the given context type. + + + + Call this method from the constructor of a class derived from to register a + for use with the provider represented by the given invariant name. + + + This method is typically used by providers to register an associated SQL generator for Code First Migrations. + It is different from setting the generator in the because it allows + EF to use the Migrations pipeline to create a database even when there is no Migrations configuration in the project + and/or Migrations are not being explicitly used. + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + The invariant name of the ADO.NET provider for which this generator should be used. + A delegate that returns a new instance of the SQL generator each time it is called. + + + + Call this method from the constructor of a class derived from to set + an implementation of which allows provider manifest tokens to + be obtained from connections without necessarily opening the connection. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + The manifest token resolver. + + + + Call this method from the constructor of a class derived from to set + a factory for implementations of which allows custom annotations + represented by instances to be serialized to and from the EDMX XML. + + + Note that an is not needed if the annotation uses a simple string value. + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + The name of custom annotation that will be handled by this serializer. + A delegate that will be used to create serializer instances. + + + + Call this method from the constructor of a class derived from to set + an implementation of which allows a + to be obtained from a in cases where the default implementation is not + sufficient. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + The provider factory service. + + + + Call this method from the constructor of a class derived from to set + a as the model cache key factory which allows the key + used to cache the model behind a to be changed. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can + be achieved using a custom resolver or a resolver backed by an Inversion-of-Control container. + + The key factory. + + + + Call this method from the constructor of a class derived from to set + a delegate which which be used for + creation of the default for a any + . This default factory will only be used if no factory is + set explicitly in the and if no factory has been registered + for the provider in use using the + + method. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality + can be achieved using a custom resolver or a resolver backed by an Inversion-of-Control container. + + + A factory for creating instances for a given and + representing the default schema. + + + + + Call this method from the constructor of a class derived from to set + a delegate which allows for creation of a customized + for the given provider for any + that does not have an explicit factory set. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality + can be achieved using a custom resolver or a resolver backed by an Inversion-of-Control container. + + The invariant name of the ADO.NET provider for which this generator should be used. + + A factory for creating instances for a given and + representing the default schema. + + + + + Call this method from the constructor of a class derived from to set + the global instance of which will be used whenever a spatial provider is + required and a provider-specific spatial provider cannot be found. Normally, a provider-specific spatial provider + is obtained from the a implementation which is in turn returned by resolving + a service for passing the provider invariant name as a key. However, this + cannot work for stand-alone instances of and since + it is impossible to know the spatial provider to use. Therefore, when creating stand-alone instances + of and the global spatial provider is always used. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + The spatial provider. + + + + Call this method from the constructor of a class derived from to set + an implementation of to use for a specific provider and provider + manifest token. + + + Use + to register spatial services for use only when a specific manifest token is returned by the provider. + Use to register global + spatial services to be used when provider information is not available or no provider-specific + spatial services are found. + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + + The indicating the type of ADO.NET connection for which this spatial provider will be used. + + The spatial provider. + + + + Call this method from the constructor of a class derived from to set + an implementation of to use for a specific provider with any + manifest token. + + + Use + to register spatial services for use when any manifest token is returned by the provider. + Use to register global + spatial services to be used when provider information is not available or no provider-specific + spatial services are found. + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this spatial provider will be used. + The spatial provider. + + + + Call this method from the constructor of a class derived from to set + a factory for the type of to use with . + + + Note that setting the type of formatter to use with this method does change the way command are + logged when is used. It is still necessary to set a + instance onto before any commands will be logged. + For more low-level control over logging/interception see and + . + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + A delegate that will create formatter instances. + + + + Call this method from the constructor of a class derived from to + register an at application startup. Note that interceptors can also + be added and removed at any time using . + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + . This means that, if desired, the same functionality can be achieved using + a custom resolver or a resolver backed by an Inversion-of-Control container. + + The interceptor to register. + + + + Call this method from the constructor of a class derived from to set + a factory to allow to create instances of a context that does not have a public, + parameterless constructor. + + + This is typically needed to allow design-time tools like Migrations or scaffolding code to use contexts that + do not have public, parameterless constructors. + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + with the context as the key. This means that, if desired, + the same functionality can be achieved using a custom resolver or a resolver backed by an + Inversion-of-Control container. + + The context type for which the factory should be used. + The delegate to use to create context instances. + + + + Call this method from the constructor of a class derived from to set + a factory to allow to create instances of a context that does not have a public, + parameterless constructor. + + + This is typically needed to allow design-time tools like Migrations or scaffolding code to use contexts that + do not have public, parameterless constructors. + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + with the context as the key. This means that, if desired, + the same functionality can be achieved using a custom resolver or a resolver backed by an + Inversion-of-Control container. + + The context type for which the factory should be used. + The delegate to use to create context instances. + + + + Call this method from the constructor of a class derived from to register + a database table existence checker for a given provider. + + + This method is provided as a convenient and discoverable way to add configuration to the Entity Framework. + Internally it works in the same way as using AddDependencyResolver to add an appropriate resolver for + and also using AddDefaultResolver to add the provider as a default + resolver. This means that, if desired, the same functionality can be achieved using a custom resolver or a + resolver backed by an Inversion-of-Control container. + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this provider will be used. + The table existence checker to use. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Creates a shallow copy of the current . + + A shallow copy of the current . + + + + Occurs during EF initialization after the DbConfiguration has been constructed but just before + it is locked ready for use. Use this event to inspect and/or override services that have been + registered before the configuration is locked. Note that this event should be used carefully + since it may prevent tooling from discovering the same configuration that is used at runtime. + + + Handlers can only be added before EF starts to use the configuration and so handlers should + generally be added as part of application initialization. Do not access the DbConfiguration + static methods inside the handler; instead use the the members of + to get current services and/or add overrides. + + + + + Gets the that is being used to resolve service + dependencies in the Entity Framework. + + + + + This attribute can be placed on a subclass of to indicate that the subclass of + representing the code-based configuration for the application is in a different + assembly than the context type. + + + Normally a subclass of should be placed in the same assembly as + the subclass of used by the application. It will then be discovered automatically. + However, if this is not possible or if the application contains multiple context types in different + assemblies, then this attribute can be used to direct DbConfiguration discovery to the appropriate type. + An alternative to using this attribute is to specify the DbConfiguration type to use in the application's + config file. See http://go.microsoft.com/fwlink/?LinkId=260883 for more information. + + + + + Indicates that the given subclass of should be used for code-based configuration + for this application. + + + The type to use. + + + + + Indicates that the subclass of represented by the given assembly-qualified + name should be used for code-based configuration for this application. + + + The type to use. + + + + + Gets the subclass of that should be used for code-based configuration + for this application. + + + + Implements the basic functionality required by aggregates in a GroupBy clause. + + + + Gets the result type of this . + + + The result type of this . + + + + + Gets the list of expressions that define the arguments to this + + . + + + The list of expressions that define the arguments to this + + . + + + + Represents the logical AND of two Boolean arguments. This class cannot be inherited. + + + Implements the basic functionality required by expressions that accept two expression operands. + + + Represents the base type for all expressions. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + The type of the result produced by . + + + An instance of . + + The type of the result produced by visitor. + + + + Determines whether the specified is equal to the current DbExpression instance. + + + True if the specified is equal to the current DbExpression instance; otherwise, false. + + + The object to compare to the current . + + + + Serves as a hash function for the type. + A hash code for the current expression. + + + + Creates a that represents the specified binary value, which may be null + + + A that represents the specified binary value. + + The binary value on which the returned expression should be based. + + + + Enables implicit casting from a byte array. + + The value to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) Boolean value. + + + A that represents the specified Boolean value. + + The Boolean value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) byte value. + + + A that represents the specified byte value. + + The byte value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) + + value. + + + A that represents the specified DateTime value. + + The DateTime value on which the returned expression should be based. + + + + Enables implicit casting from . + + The expression to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) + + value. + + + A that represents the specified DateTimeOffset value. + + The DateTimeOffset value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) decimal value. + + + A that represents the specified decimal value. + + The decimal value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) double value. + + + A that represents the specified double value. + + The double value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified + + value, which may be null. + + + A that represents the specified DbGeography value. + + The DbGeography value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified + + value, which may be null. + + + A that represents the specified DbGeometry value. + + The DbGeometry value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) + + value. + + + A that represents the specified Guid value. + + The Guid value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) Int16 value. + + + A that represents the specified Int16 value. + + The Int16 value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) Int32 value. + + + A that represents the specified Int32 value. + + The Int32 value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) Int64 value. + + + A that represents the specified Int64 value. + + The Int64 value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified (nullable) Single value. + + + A that represents the specified Single value. + + The Single value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + + Creates a that represents the specified string value. + + + A that represents the specified string value. + + The string value on which the returned expression should be based. + + + + Enables implicit casting from . + + The value to be converted. + The converted value. + + + Gets the type metadata for the result type of the expression. + The type metadata for the result type of the expression. + + + Gets the kind of the expression, which indicates the operation of this expression. + The kind of the expression, which indicates the operation of this expression. + + + + Gets the that defines the left argument. + + + The that defines the left argument. + + The expression is null. + + The expression is not associated with the command tree of the + + ,or its result type is not equal or promotable to the required type for the left argument. + + + + + Gets the that defines the right argument. + + + The that defines the right argument. + + The expression is null. + + The expression is not associated with the command tree of the + + ,or its result type is not equal or promotable to the required type for the right argument. + + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by the visitor . + visitor is null. + + + Represents an apply operation, which is the invocation of the specified function for each element in the specified input set. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by the visitor . + visitor is null. + + + + Gets the that specifies the function that is invoked for each element in the input set. + + + The that specifies the function that is invoked for each element in the input set. + + + + + Gets the that specifies the input set. + + + The that specifies the input set. + + + + + Represents an arithmetic operation applied to numeric arguments. + Addition, subtraction, multiplication, division, modulo, and negation are arithmetic operations. + This class cannot be inherited. + + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + + Gets the list of elements that define the current arguments. + + + A fixed-size list of elements. + + + + + Represents the When, Then, and Else clauses of the + + . This class cannot be inherited. + + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor. + visitor is null. + + + + Gets the When clauses of this . + + + The When clauses of this . + + + + + Gets the Then clauses of this . + + + The Then clauses of this . + + + + + Gets the Else clause of this . + + + The Else clause of this . + + The expression is null. + + The expression is not associated with the command tree of the + + ,or its result type is not equal or promotable to the result type of the + + . + + + + Represents the type conversion of a single argument to the specified type. This class cannot be inherited. + + + Implements the basic functionality required by expressions that accept a single expression argument. + + + + Gets the that defines the argument. + + + The that defines the argument. + + The expression is null. + + The expression is not associated with the command tree of a + + , or its result type is not equal or promotable to the required type for the argument. + + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor. + visitor is null. + + + + Describes the different "kinds" (classes) of command trees. + + + + + A query to retrieve data + + + + + Update existing data + + + + + Insert new data + + + + + Deleted existing data + + + + + Call a function + + + + Represents a comparison operation applied to two arguments. Equality, greater than, greater than or equal, less than, less than or equal, and inequality are comparison operations. This class cannot be inherited. + + DbComparisonExpression requires that its arguments have a common result type + that is equality comparable (for .Equals and .NotEquals), + order comparable (for .GreaterThan and .LessThan), + or both (for .GreaterThanOrEquals and .LessThanOrEquals). + + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor. + visitor is null. + + + Represents different kinds of constants (literals). This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor. + visitor is null. + + + Gets the constant value. + The constant value. + + + Represents an unconditional join operation between the given collection arguments. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor. + visitor is null. + + + + Gets a list that provides the input sets to the join. + + + A list that provides the input sets to the join. + + + + Represents the an expression that retrieves an entity based on the specified reference. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor. + visitor is null. + + + Removes duplicate elements from the specified set argument. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor. + visitor is null. + + + Represents the conversion of the specified set argument to a singleton. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor. + visitor is null. + + + Represents an expression that extracts a reference from the underlying entity instance. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor. + visitor is null. + + + Represents the set subtraction operation between the left and right operands. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor. + visitor is null. + + + + Describes a binding for an expression. Conceptually similar to a foreach loop + in C#. The DbExpression property defines the collection being iterated over, + while the Var property provides a means to reference the current element + of the collection during the iteration. DbExpressionBinding is used to describe the set arguments + to relational expressions such as , + and . + + + + + + + Gets the that defines the input set. + + + The that defines the input set. + + The expression is null. + The expression is not associated with the command tree of the binding, or its result type is not equal or promotable to the result type of the current value of the property. + + + Gets the name assigned to the element variable. + The name assigned to the element variable. + + + Gets the type metadata of the element variable. + The type metadata of the element variable. + + + + Gets the that references the element variable. + + The variable reference. + + + Represents a predicate applied to filter an input set. This produces the set of elements that satisfy the predicate. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + + Gets the that specifies the input set. + + + The that specifies the input set. + + + + + Gets the that specifies the predicate used to filter the input set. + + + The that specifies the predicate used to filter the input set. + + The expression is null. + + The expression is not associated with the command tree of the + + , or its result type is not a Boolean type. + + + + Represents an invocation of a function. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Gets the metadata for the function to invoke. + The metadata for the function to invoke. + + + + Gets an list that provides the arguments to the function. + + + An list that provides the arguments to the function. + + + + Represents a collection of elements that compose a group. + + + Represents a group by operation. A group by operation is a grouping of the elements in the input set based on the specified key expressions followed by the application of the specified aggregates. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + + Gets the that specifies the input set and provides access to the set element and group element variables. + + + The that specifies the input set and provides access to the set element and group element variables. + + + + + Gets a list that provides grouping keys. + + + A list that provides grouping keys. + + + + + Gets a list that provides the aggregates to apply. + + + A list that provides the aggregates to apply. + + + + Represents the set intersection operation between the left and right operands. This class cannot be inherited. + + DbIntersectExpression requires that its arguments have a common collection result type + + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Represents an empty set determination applied to a single set argument. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Represents null determination applied to a single argument. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Represents the type comparison of a single argument against the specified type. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Gets the type metadata that the type metadata of the argument should be compared to. + The type metadata that the type metadata of the argument should be compared to. + + + Represents an inner, left outer, or full outer join operation between the given collection arguments on the specified join condition. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + + Gets the that provides the left input. + + + The that provides the left input. + + + + + Gets the that provides the right input. + + + The that provides the right input. + + + + Gets the join condition to apply. + The join condition to apply. + The expression is null. + + The expression is not associated with the command tree of the + + , or its result type is not a Boolean type. + + + + + Allows the application of a lambda function to arguments represented by + + objects. + + + + The visitor pattern method for expression visitors that do not produce a result value. + + An instance of . + + visitor is null + + + The visitor pattern method for expression visitors that produce a result value of a specific type. + The type of the result produced by the expression visitor. + + An instance of a typed that produces a result value of type TResultType. + + The type of the result produced by visitor + visitor is null + + + + Gets the representing the Lambda function applied by this expression. + + + The representing the Lambda function applied by this expression. + + + + + Gets a list that provides the arguments to which the Lambda function should be applied. + + + The list. + + + + Represents a string comparison against the specified pattern with an optional escape string. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Gets an expression that specifies the string to compare against the given pattern. + An expression that specifies the string to compare against the given pattern. + The expression is null. + + The expression is not associated with the command tree of + + , or its result type is not a string type. + + + + Gets an expression that specifies the pattern against which the given string should be compared. + An expression that specifies the pattern against which the given string should be compared. + The expression is null. + + The expression is not associated with the command tree of + + , or its result type is not a string type. + + + + Gets an expression that provides an optional escape string to use for the comparison. + An expression that provides an optional escape string to use for the comparison. + The expression is null. + + The expression is not associated with the command tree of + + , or its result type is not a string type. + + + + Represents the restriction of the number of elements in the argument collection to the specified limit value. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Gets an expression that specifies the input collection. + An expression that specifies the input collection. + The expression is null. + + The expression is not associated with the command tree of the + + , or its result type is not a collection type. + + + + Gets an expression that specifies the limit on the number of elements returned from the input collection. + An expression that specifies the limit on the number of elements returned from the input collection. + The expression is null. + + The expression is not associated with the command tree of the + + , or is not one of + + or + + , or its result type is not equal or promotable to a 64-bit integer type. + + + + + Gets whether the limit operation will include tied results. Including tied results might produce more results than specified by the + + value. + + true if the limit operation will include tied results; otherwise, false. The default is false. + + + Represents the construction of a new instance of a given type, including set and record types. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + + Gets an list that provides the property/column values or set elements for the new instance. + + + An list that provides the property/column values or set elements for the new instance. + + + + Represents the logical NOT of a single Boolean argument. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Represents a reference to a typed null literal. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Represents the retrieval of elements of the specified type from the given set argument. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Gets the metadata of the type of elements that should be retrieved from the set argument. + The metadata of the type of elements that should be retrieved from the set argument. + + + Represents the logical OR of two Boolean arguments. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Represents a reference to a parameter declared on the command tree that contains this expression. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Gets the name of the referenced parameter. + The name of the referenced parameter. + + + Represents the projection of a given input set over the specified expression. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + + Gets the that specifies the input set. + + + The that specifies the input set. + + + + + Gets the that defines the projection. + + + The that defines the projection. + + The expression is null. + + The expression is not associated with the command tree of the + + , or its result type is not equal or promotable to the reference type of the current projection. + + + + Provides methods and properties for retrieving an instance property. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Creates a new key/value pair based on this property expression. + + A new key/value pair with the key and value derived from the + + . + + + + + Enables implicit casting to . + + The expression to be converted. + The converted value. + + + Gets the property metadata for the property to retrieve. + The property metadata for the property to retrieve. + + + + Gets a that defines the instance from which the property should be retrieved. + + + A that defines the instance from which the property should be retrieved. + + The expression is null. + + The expression is not associated with the command tree of the + + , or its result type is not equal or promotable to the type that defines the property. + + + + Represents a quantifier operation of the specified kind over the elements of the specified input set. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + + Gets the that specifies the input set. + + + The that specifies the input set. + + + + Gets the Boolean predicate that should be evaluated for each element in the input set. + The Boolean predicate that should be evaluated for each element in the input set. + The expression is null. + + The expression is not associated with the command tree for the + + ,or its result type is not a Boolean type. + + + + Represents a strongly typed reference to a specific instance within an entity set. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Gets the metadata for the entity set that contains the instance. + The metadata for the entity set that contains the instance. + + + Represents the navigation of a relationship. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Gets the metadata for the relationship over which navigation occurs. + The metadata for the relationship over which navigation occurs. + + + Gets the metadata for the relationship end to navigate from. + The metadata for the relationship end to navigate from. + + + Gets the metadata for the relationship end to navigate to. + The metadata for the relationship end to navigate to. + + + + Gets an that specifies the starting point of the navigation and must be a reference to an entity instance. + + + An that specifies the instance of the source relationship end from which navigation should occur. + + The expression is null. + + The expression is not associated with the command tree of the + + , or its result type is not equal or promotable to the reference type of the + + property. + + + + + Skips a specified number of elements in the input set. + + can only be used after the input collection has been sorted as specified by the sort keys. + + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + + Gets the that specifies the input set. + + + The that specifies the input set. + + + + + Gets a list that defines the sort order. + + + A list that defines the sort order. + + + + Gets an expression that specifies the number of elements to skip from the input collection. + An expression that specifies the number of elements to skip from the input collection. + The expression is null. + + The expression is not associated with the command tree of the + + ; the expression is not either a + + or a + + ; or the result type of the expression is not equal or promotable to a 64-bit integer type. + + + + + Specifies a sort key that can be used as part of the sort order in a + + . This class cannot be inherited. + + + + Gets a Boolean value indicating whether or not this sort key uses an ascending sort order. + true if this sort key uses an ascending sort order; otherwise, false. + + + Gets a string value that specifies the collation for this sort key. + A string value that specifies the collation for this sort key. + + + + Gets the that provides the value for this sort key. + + + The that provides the value for this sort key. + + + + Represents a sort operation applied to the elements of the specified input set based on the given sort keys. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by + visitor + + + visitor + is null. + + + + Gets the that specifies the input set. + + + The that specifies the input set. + + + + + Gets a list that defines the sort order. + + + A list that defines the sort order. + + + + Represents a type conversion operation applied to a polymorphic argument. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Supports standard aggregate functions, such as MIN, MAX, AVG, SUM, and so on. This class cannot be inherited. + + + Gets a value indicating whether this aggregate is a distinct aggregate. + true if the aggregate is a distinct aggregate; otherwise, false. + + + Gets the method metadata that specifies the aggregate function to invoke. + The method metadata that specifies the aggregate function to invoke. + + + + An abstract base type for types that implement the IExpressionVisitor interface to derive from. + + + + + An abstract base type for types that implement the IExpressionVisitor interface to derive from. + + + + Defines the basic functionality that should be implemented by visitors that do not return a result value. + + + When overridden in a derived class, handles any expression of an unrecognized type. + The expression to be handled. + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + When overridden in a derived class, implements the visitor pattern for + + . + + + The that is visited. + + + + + Visitor pattern method for DbInExpression. + + The DbInExpression that is being visited. + + + + Convenience method to visit the specified . + + The DbUnaryExpression to visit. + + + is null + + + + + Convenience method to visit the specified . + + The DbBinaryExpression to visit. + + + is null + + + + + Convenience method to visit the specified . + + The DbExpressionBinding to visit. + + + is null + + + + + Convenience method for post-processing after a DbExpressionBinding has been visited. + + The previously visited DbExpressionBinding. + + + + Convenience method to visit the specified . + + The DbGroupExpressionBinding to visit. + + + is null + + + + + Convenience method indicating that the grouping keys of a have been visited and the aggregates are now about to be visited. + + The DbGroupExpressionBinding of the DbGroupByExpression + + + + Convenience method for post-processing after a DbGroupExpressionBinding has been visited. + + The previously visited DbGroupExpressionBinding. + + + + Convenience method indicating that the body of a Lambda is now about to be visited. + + The DbLambda that is about to be visited + + + is null + + + + + Convenience method for post-processing after a DbLambda has been visited. + + The previously visited DbLambda. + + + + Convenience method to visit the specified , if non-null. + + The expression to visit. + + + is null + + + + + Convenience method to visit each in the given list, if the list is non-null. + + The list of expressions to visit. + + + is null + + + + + Convenience method to visit each in the list, if the list is non-null. + + The list of aggregates to visit. + + + is null + + + + + Convenience method to visit the specified . + + The aggregate to visit. + + + is null + + + + + Called when an of an otherwise unrecognized type is encountered. + + The expression + + + is null + + + Always thrown if this method is called, since it indicates that + + is of an unsupported type + + + + + Visitor pattern method for . + + The DbConstantExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbNullExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbVariableReferenceExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbParameterReferenceExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbFunctionExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbLambdaExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbPropertyExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbComparisonExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbLikeExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbLimitExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbIsNullExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbArithmeticExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbAndExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbOrExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbInExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbNotExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbDistinctExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbElementExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbIsEmptyExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbUnionAllExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbIntersectExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbExceptExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbOfTypeExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbTreatExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbCastExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbIsOfExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbCaseExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbNewInstanceExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbRefExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbRelationshipNavigationExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DeRefExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbRefKeyExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbEntityRefExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbScanExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbFilterExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbProjectExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbCrossJoinExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbJoinExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbApplyExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbSkipExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbSortExpression that is being visited. + + + is null + + + + + Visitor pattern method for . + + The DbQuantifierExpression that is being visited. + + + is null + + + + Implements the visitor pattern for the set clause. + The set clause. + + + Implements the visitor pattern for the modification clause. + The modification clause. + + + Implements the visitor pattern for the collection of modification clauses. + The modification clauses. + + + Implements the visitor pattern for the command tree. + The command tree. + + + Implements the visitor pattern for the delete command tree. + The delete command tree. + + + Implements the visitor pattern for the function command tree. + The function command tree. + + + Implements the visitor pattern for the insert command tree. + The insert command tree. + + + Implements the visitor pattern for the query command tree. + The query command tree. + + + Implements the visitor pattern for the update command tree. + The update command tree. + + + An immutable class that implements the basic functionality for the Query, Insert, Update, Delete, and function invocation command tree types. + + + + Returns a that represents this command. + + + A that represents this command. + + + + + Gets a value indicating whether database null semantics are exhibited when comparing + two operands, both of which are potentially nullable. The default value is true. + + For example (operand1 == operand2) will be translated as: + + (operand1 = operand2) + + if UseDatabaseNullSemantics is true, respectively + + (((operand1 = operand2) AND (NOT (operand1 IS NULL OR operand2 IS NULL))) OR ((operand1 IS NULL) AND (operand2 IS NULL))) + + if UseDatabaseNullSemantics is false. + + + true if database null comparison behavior is enabled, otherwise false . + + + + + Gets the name and corresponding type of each parameter that can be referenced within this + + . + + + The name and corresponding type of each parameter that can be referenced within this + + . + + + + + Gets the kind of this command tree. + + + + + Gets the metadata workspace used by this command tree. + + + + + Gets the data space in which metadata used by this command tree must reside. + + + + Represents a single row delete operation expressed as a command tree. This class cannot be inherited. + + + Represents a data manipulation language (DML) operation expressed as a command tree. + + + + Gets the that specifies the target table for the data manipulation language (DML) operation. + + + The that specifies the target table for the DML operation. + + + + + Initializes a new instance of the class. + + The model this command will operate on. + The data space. + The target table for the data manipulation language (DML) operation. + A predicate used to determine which members of the target collection should be deleted. + + + + Gets an that specifies the predicate used to determine which members of the target collection should be deleted. + + + The predicate can include only the following elements: + + Equality expression + Constant expression + IsNull expression + Property expression + Reference expression to the target + And expression + Or expression + Not expression + + + + An that specifies the predicate used to determine which members of the target collection should be deleted. + + + + Gets the kind of this command tree. + The kind of this command tree. + + + + Contains values that each expression class uses to denote the operation it represents. The + + property of an + + can be retrieved to determine which operation that expression represents. + + + + + True for all. + + + + + Logical And. + + + + + True for any. + + + + + Conditional case statement. + + + + + Polymorphic type cast. + + + + + A constant value. + + + + + Cross apply + + + + + Cross join + + + + + Dereference. + + + + + Duplicate removal. + + + + + Division. + + + + + Set to singleton conversion. + + + + + Entity ref value retrieval. + + + + + Equality + + + + + Set subtraction + + + + + Restriction. + + + + + Full outer join + + + + + Invocation of a stand-alone function + + + + + Greater than. + + + + + Greater than or equal. + + + + + Grouping. + + + + + Inner join + + + + + Set intersection. + + + + + Empty set determination. + + + + + Null determination. + + + + + Type comparison (specified Type or Subtype). + + + + + Type comparison (specified Type only). + + + + + Left outer join + + + + + Less than. + + + + + Less than or equal. + + + + + String comparison. + + + + + Result count restriction (TOP n). + + + + + Subtraction. + + + + + Modulo. + + + + + Multiplication. + + + + + Instance, row, and set construction. + + + + + Logical Not. + + + + + Inequality. + + + + + Null. + + + + + Set members by type (or subtype). + + + + + Set members by (exact) type. + + + + + Logical Or. + + + + + Outer apply. + + + + + A reference to a parameter. + + + + + Addition. + + + + + Projection. + + + + + Retrieval of a static or instance property. + + + + + Reference. + + + + + Ref key value retrieval. + + + + + Navigation of a (composition or association) relationship. + + + + + Entity or relationship set scan. + + + + + Skip elements of an ordered collection. + + + + + Sorting. + + + + + Type conversion. + + + + + Negation. + + + + + Set union (with duplicates). + + + + + A reference to a variable. + + + + + Application of a lambda function + + + + + In. + + + + Represents the invocation of a database function. + + + + Constructs a new DbFunctionCommandTree that uses the specified metadata workspace, data space and function metadata + + The metadata workspace that the command tree should use. + The logical 'space' that metadata in the expressions used in this command tree must belong to. + The that represents the function that is being invoked. + The expected result type for the function’s first result set. + The function's parameters. + + , or is null + + + does not represent a valid data space or + is a composable function + + + + + Gets the that represents the function that is being invoked. + + + The that represents the function that is being invoked. + + + + Gets the expected result type for the function’s first result set. + The expected result type for the function’s first result set. + + + Gets or sets the command tree kind. + The command tree kind. + + + Represents a single row insert operation expressed as a command tree. This class cannot be inherited. + + Represents a single row insert operation expressed as a canonical command tree. + When the property is set, the command returns a reader; otherwise, + it returns a scalar value indicating the number of rows affected. + + + + + Initializes a new instance of the class. + + The model this command will operate on. + The data space. + The target table for the data manipulation language (DML) operation. + The list of insert set clauses that define the insert operation. . + A that specifies a projection of results to be returned, based on the modified rows. + + + Gets the list of insert set clauses that define the insert operation. + The list of insert set clauses that define the insert operation. + + + + Gets an that specifies a projection of results to be returned based on the modified rows. + + + An that specifies a projection of results to be returned based on the modified rows. null indicates that no results should be returned from this command. + + + + Gets the command tree kind. + The command tree kind. + + + + Represents a Lambda function that can be invoked to produce a + + . + + + + + Creates a with the specified inline Lambda function implementation and formal parameters. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters + An expression that defines the logic of the Lambda function + + A collection that represents the formal parameters to the Lambda function. These variables are valid for use in the body expression. + + + + is null or contains null, or + + is null + + + + contains more than one element with the same variable name. + + + + + Creates a with the specified inline Lambda function implementation and formal parameters. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters + An expression that defines the logic of the Lambda function + + A collection that represents the formal parameters to the Lambda function. These variables are valid for use in the body expression. + + + + is null or contains null, or + + is null. + + + + contains more than one element with the same variable name. + + + + + Creates a new with a single argument of the specified type, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and single formal parameter. + + A that defines the EDM type of the argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A that defines the EDM type of the seventh argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A that defines the EDM type of the seventh argument to the Lambda function + + + A that defines the EDM type of the eighth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A that defines the EDM type of the seventh argument to the Lambda function + + + A that defines the EDM type of the eighth argument to the Lambda function + + + A that defines the EDM type of the ninth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A that defines the EDM type of the seventh argument to the Lambda function + + + A that defines the EDM type of the eighth argument to the Lambda function + + + A that defines the EDM type of the ninth argument to the Lambda function + + + A that defines the EDM type of the tenth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A that defines the EDM type of the seventh argument to the Lambda function + + + A that defines the EDM type of the eighth argument to the Lambda function + + + A that defines the EDM type of the ninth argument to the Lambda function + + + A that defines the EDM type of the tenth argument to the Lambda function + + + A that defines the EDM type of the eleventh argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A that defines the EDM type of the seventh argument to the Lambda function + + + A that defines the EDM type of the eighth argument to the Lambda function + + + A that defines the EDM type of the ninth argument to the Lambda function + + + A that defines the EDM type of the tenth argument to the Lambda function + + + A that defines the EDM type of the eleventh argument to the Lambda function + + + A that defines the EDM type of the twelfth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A that defines the EDM type of the seventh argument to the Lambda function + + + A that defines the EDM type of the eighth argument to the Lambda function + + + A that defines the EDM type of the ninth argument to the Lambda function + + + A that defines the EDM type of the tenth argument to the Lambda function + + + A that defines the EDM type of the eleventh argument to the Lambda function + + + A that defines the EDM type of the twelfth argument to the Lambda function + + + A that defines the EDM type of the thirteenth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A that defines the EDM type of the seventh argument to the Lambda function + + + A that defines the EDM type of the eighth argument to the Lambda function + + + A that defines the EDM type of the ninth argument to the Lambda function + + + A that defines the EDM type of the tenth argument to the Lambda function + + + A that defines the EDM type of the eleventh argument to the Lambda function + + + A that defines the EDM type of the twelfth argument to the Lambda function + + + A that defines the EDM type of the thirteenth argument to the Lambda function + + + A that defines the EDM type of the fourteenth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A that defines the EDM type of the seventh argument to the Lambda function + + + A that defines the EDM type of the eighth argument to the Lambda function + + + A that defines the EDM type of the ninth argument to the Lambda function + + + A that defines the EDM type of the tenth argument to the Lambda function + + + A that defines the EDM type of the eleventh argument to the Lambda function + + + A that defines the EDM type of the twelfth argument to the Lambda function + + + A that defines the EDM type of the thirteenth argument to the Lambda function + + + A that defines the EDM type of the fourteenth argument to the Lambda function + + + A that defines the EDM type of the fifteenth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + or + + is null or produces a result of null. + + + + + Creates a new with arguments of the specified types, as defined by the specified function. + + A new DbLambda that describes an inline Lambda function with the specified body and formal parameters. + + A that defines the EDM type of the first argument to the Lambda function + + + A that defines the EDM type of the second argument to the Lambda function + + + A that defines the EDM type of the third argument to the Lambda function + + + A that defines the EDM type of the fourth argument to the Lambda function + + + A that defines the EDM type of the fifth argument to the Lambda function + + + A that defines the EDM type of the sixth argument to the Lambda function + + + A that defines the EDM type of the seventh argument to the Lambda function + + + A that defines the EDM type of the eighth argument to the Lambda function + + + A that defines the EDM type of the ninth argument to the Lambda function + + + A that defines the EDM type of the tenth argument to the Lambda function + + + A that defines the EDM type of the eleventh argument to the Lambda function + + + A that defines the EDM type of the twelfth argument to the Lambda function + + + A that defines the EDM type of the thirteenth argument to the Lambda function + + + A that defines the EDM type of the fourteenth argument to the Lambda function + + + A that defines the EDM type of the fifteenth argument to the Lambda function + + + A that defines the EDM type of the sixteenth argument to the Lambda function + + + A function that defines the logic of the Lambda function as a + + + + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, + + is null, or + + is null or produces a result of null. + + + + Gets the body of the lambda expression. + + A that represents the body of the lambda function. + + + + Gets the parameters of the lambda expression. + The list of lambda function parameters represented as DbVariableReferenceExpression objects. + + + + Specifies a single clause in an insert or update modification operation, see + and + + + An abstract base class allows the possibility of patterns other than + Property = Value in future versions, e.g., + update SomeTable + set ComplexTypeColumn.SomeProperty() + where Id = 2 + + + + Represents a query operation expressed as a command tree. This class cannot be inherited. + + + + Constructs a new DbQueryCommandTree that uses the specified metadata workspace. + + The metadata workspace that the command tree should use. + The logical 'space' that metadata in the expressions used in this command tree must belong to. + + A that defines the logic of the query. + + When set to false the validation of the tree is turned off. + A boolean that indicates whether database null semantics are exhibited when comparing + two operands, both of which are potentially nullable. + + + or + + is null + + + + does not represent a valid data space + + + + + Constructs a new DbQueryCommandTree that uses the specified metadata workspace, using database null semantics. + + The metadata workspace that the command tree should use. + The logical 'space' that metadata in the expressions used in this command tree must belong to. + + A that defines the logic of the query. + + When set to false the validation of the tree is turned off. + + + or + + is null + + + + does not represent a valid data space + + + + + Constructs a new DbQueryCommandTree that uses the specified metadata workspace, using database null semantics. + + The metadata workspace that the command tree should use. + The logical 'space' that metadata in the expressions used in this command tree must belong to. + + A that defines the logic of the query. + + + + or + + is null + + + + does not represent a valid data space + + + + + Gets an that defines the logic of the query operation. + + + An that defines the logic of the query operation. + + The expression is null. + The expression is associated with a different command tree. + + + Gets the kind of this command tree. + The kind of this command tree. + + + Specifies the clause in a modification operation that sets the value of a property. This class cannot be inherited. + + + + Gets an that specifies the property that should be updated. + + + An that specifies the property that should be updated. + + + + + Gets an that specifies the new value with which to update the property. + + + An that specifies the new value with which to update the property. + + + + Represents a single-row update operation expressed as a command tree. This class cannot be inherited. + + Represents a single-row update operation expressed as a canonical command tree. + When the property is set, the command returns a reader; otherwise, + it returns a scalar indicating the number of rows affected. + + + + + Initializes a new instance of the class. + + The model this command will operate on. + The data space. + The target table for the data manipulation language (DML) operation. + A predicate used to determine which members of the target collection should be updated. + The list of update set clauses that define the update operation. + A that specifies a projection of results to be returned, based on the modified rows. + + + Gets the list of update set clauses that define the update operation. + The list of update set clauses that define the update operation. + + + + Gets an that specifies a projection of results to be returned, based on the modified rows. + + + An that specifies a projection of results to be returned based, on the modified rows. null indicates that no results should be returned from this command. + + + + + Gets an that specifies the predicate used to determine which members of the target collection should be updated. + + + An that specifies the predicate used to determine which members of the target collection should be updated. + + + + Gets the kind of this command tree. + The kind of this command tree. + + + Represents a reference to a variable that is currently in scope. This class cannot be inherited. + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Gets the name of the referenced variable. + The name of the referenced variable. + + + + Defines the binding for the input set to a . + In addition to the properties of , DbGroupExpressionBinding + also provides access to the group element via the variable reference + and to the group aggregate via the property. + + + + + Gets the that defines the input set. + + + The that defines the input set. + + The expression is null. + + The expression is not associated with the command tree of the + + , or its result type is not equal or promotable to the result type of the current value of the property. + + + + Gets the name assigned to the element variable. + The name assigned to the element variable. + + + Gets the type metadata of the element variable. + The type metadata of the element variable. + + + + Gets the that references the element variable. + + A reference to the element variable. + + + Gets the name assigned to the group element variable. + The name assigned to the group element variable. + + + Gets the type metadata of the group element variable. + The type metadata of the group element variable. + + + + Gets the that references the group element variable. + + A reference to the group element variable. + + + + Gets the that represents the collection of elements in the group. + + The elements in the group. + + + + Provides an API to construct s and allows that API to be accessed as extension methods on the expression type itself. + + + + Returns the specified arguments as a key/value pair object. + A key/value pair object. + The value in the key/value pair. + The key in the key/value pair. + + + Returns the specified arguments as a key/value pair object. + A key/value pair object. + The value in the key/value pair. + The key in the key/value pair. + + + + Creates a new that uses a generated variable name to bind the given expression. + + A new expression binding with the specified expression and a generated variable name. + The expression to bind. + input is null. + input does not have a collection result. + + + + Creates a new that uses the specified variable name to bind the given expression + + A new expression binding with the specified expression and variable name. + The expression to bind. + The variable name that should be used for the binding. + input or varName is null. + input does not have a collection result. + + + Creates a new group expression binding that uses generated variable and group variable names to bind the given expression. + A new group expression binding with the specified expression and a generated variable name and group variable name. + The expression to bind. + input is null. + input does not have a collection result type. + + + + Creates a new that uses the specified variable name and group variable names to bind the given expression. + + A new group expression binding with the specified expression, variable name and group variable name. + The expression to bind. + The variable name that should be used for the binding. + The variable name that should be used to refer to the group when the new group expression binding is used in a group-by expression. + input, varName or groupVarName is null. + input does not have a collection result type. + + + + Creates a new . + + A new function aggregate with a reference to the given function and argument. The function aggregate's Distinct property will have the value false. + The function that defines the aggregate operation. + The argument over which the aggregate function should be calculated. + function or argument null. + function is not an aggregate function or has more than one argument, or the result type of argument is not equal or promotable to the parameter type of function. + + + + Creates a new that is applied in a distinct fashion. + + A new function aggregate with a reference to the given function and argument. The function aggregate's Distinct property will have the value true. + The function that defines the aggregate operation. + The argument over which the aggregate function should be calculated. + function or argument is null. + function is not an aggregate function or has more than one argument, or the result type of argument is not equal or promotable to the parameter type of function. + + + + Creates a new over the specified argument + + The argument over which to perform the nest operation + A new group aggregate representing the elements of the group referenced by the given argument. + + + is null + + + + + Creates a with the specified inline Lambda function implementation and formal parameters. + + A new expression that describes an inline Lambda function with the specified body and formal parameters. + An expression that defines the logic of the Lambda function. + + A collection that represents the formal parameters to the Lambda function. These variables are valid for use in the body expression. + + variables is null or contains null, or body is null. + variables contains more than one element with the same variable name. + + + + Creates a with the specified inline Lambda function implementation and formal parameters. + + A new expression that describes an inline Lambda function with the specified body and formal parameters. + An expression that defines the logic of the Lambda function. + + A collection that represents the formal parameters to the Lambda function. These variables are valid for use in the body expression. + + variables is null or contains null, or body is null. + variables contains more than one element with the same variable name. + + + + Creates a new with an ascending sort order and default collation. + + A new sort clause with the given sort key and ascending sort order. + The expression that defines the sort key. + key is null. + key does not have an order-comparable result type. + + + + Creates a new with a descending sort order and default collation. + + A new sort clause with the given sort key and descending sort order. + The expression that defines the sort key. + key is null. + key does not have an order-comparable result type. + + + + Creates a new with an ascending sort order and the specified collation. + + A new sort clause with the given sort key and collation, and ascending sort order. + The expression that defines the sort key. + The collation to sort under. + key is null. + collation is empty or contains only space characters. + key does not have an order-comparable result type. + + + + Creates a new with a descending sort order and the specified collation. + + A new sort clause with the given sort key and collation, and descending sort order. + The expression that defines the sort key. + The collation to sort under. + key is null. + collation is empty or contains only space characters. + key does not have an order-comparable result type. + + + + Creates a new that determines whether the given predicate holds for all elements of the input set. + + A new DbQuantifierExpression that represents the All operation. + An expression binding that specifies the input set. + An expression representing a predicate to evaluate for each member of the input set. + input or predicate is null. + predicate does not have a Boolean result type. + + + + Creates a new that determines whether the given predicate holds for any element of the input set. + + A new DbQuantifierExpression that represents the Any operation. + An expression binding that specifies the input set. + An expression representing a predicate to evaluate for each member of the input set. + input or predicate is null. + The expression produced by predicate does not have a Boolean result type. + + + + Creates a new that evaluates the given apply expression once for each element of a given input set, producing a collection of rows with corresponding input and apply columns. Rows for which apply evaluates to an empty set are not included. + + + An new DbApplyExpression with the specified input and apply bindings and an + + of CrossApply. + + + An that specifies the input set. + + + An that specifies logic to evaluate once for each member of the input set. + + input or apply is null. + + + + Creates a new that evaluates the given apply expression once for each element of a given input set, producing a collection of rows with corresponding input and apply columns. Rows for which apply evaluates to an empty set have an apply column value of null. + + + An new DbApplyExpression with the specified input and apply bindings and an + + of OuterApply. + + + An that specifies the input set. + + + An that specifies logic to evaluate once for each member of the input set. + + input or apply is null. + + + + Creates a new that unconditionally joins the sets specified by the list of input expression bindings. + + + A new DbCrossJoinExpression, with an of CrossJoin, that represents the unconditional join of the input sets. + + A list of expression bindings that specifies the input sets. + inputs is null or contains null element. + inputs contains fewer than 2 expression bindings. + + + + Creates a new that joins the sets specified by the left and right expression bindings, on the specified join condition, using InnerJoin as the + + . + + + A new DbJoinExpression, with an of InnerJoin, that represents the inner join operation applied to the left and right input sets under the given join condition. + + + An that specifies the left set argument. + + + An that specifies the right set argument. + + An expression that specifies the condition on which to join. + left, right or joinCondition is null. + joinCondition does not have a Boolean result type. + + + + Creates a new that joins the sets specified by the left and right expression bindings, on the specified join condition, using LeftOuterJoin as the + + . + + + A new DbJoinExpression, with an of LeftOuterJoin, that represents the left outer join operation applied to the left and right input sets under the given join condition. + + + An that specifies the left set argument. + + + An that specifies the right set argument. + + An expression that specifies the condition on which to join. + left, right or joinCondition is null. + joinCondition does not have a Boolean result type. + + + + Creates a new that joins the sets specified by the left and right expression bindings, on the specified join condition, using FullOuterJoin as the + + . + + + A new DbJoinExpression, with an of FullOuterJoin, that represents the full outer join operation applied to the left and right input sets under the given join condition. + + + An that specifies the left set argument. + + + An that specifies the right set argument. + + An expression that specifies the condition on which to join. + left, right or joinCondition is null. + The expression produced by joinCondition does not have a Boolean result type. + + + + Creates a new that filters the elements in the given input set using the specified predicate. + + A new DbFilterExpression that produces the filtered set. + An expression binding that specifies the input set. + An expression representing a predicate to evaluate for each member of the input set. + input or predicate is null. + predicate does not have a Boolean result type. + + + + Creates a new that groups the elements of the input set according to the specified group keys and applies the given aggregates. + + A new DbGroupByExpression with the specified input set, grouping keys and aggregates. + + A that specifies the input set. + + A list of string-expression pairs that define the grouping columns. + A list of expressions that specify aggregates to apply. + input, keys or aggregates is null, keys contains a null column key or expression, or aggregates contains a null aggregate column name or aggregate. + Both keys and aggregates are empty, or an invalid or duplicate column name was specified. + + + + Creates a new that projects the specified expression over the given input set. + + A new DbProjectExpression that represents the projection operation. + An expression binding that specifies the input set. + An expression to project over the set. + input or projection is null. + + + + Creates a new that sorts the given input set by the given sort specifications before skipping the specified number of elements. + + A new DbSkipExpression that represents the skip operation. + An expression binding that specifies the input set. + A list of sort specifications that determine how the elements of the input set should be sorted. + An expression the specifies how many elements of the ordered set to skip. + input, sortOrder or count is null, or sortOrder contains null. + + sortOrder is empty, or count is not or + + or has a result type that is not equal or promotable to a 64-bit integer type. + + + + + Creates a new that sorts the given input set by the specified sort specifications. + + A new DbSortExpression that represents the sort operation. + An expression binding that specifies the input set. + A list of sort specifications that determine how the elements of the input set should be sorted. + input or sortOrder is null, or sortOrder contains null. + sortOrder is empty. + + + + Creates a new , which represents a typed null value. + + An instance of DbNullExpression. + The type of the null value. + nullType is null. + + + + Creates a new with the given constant value. + + A new DbConstantExpression with the given value. + The constant value to represent. + value is null. + value is not an instance of a valid constant type. + + + + Creates a new of the specified primitive type with the given constant value. + + A new DbConstantExpression with the given value and a result type of constantType. + The type of the constant value. + The constant value to represent. + value or constantType is null. + value is not an instance of a valid constant type, constantType does not represent a primitive type, or value is of a different primitive type than that represented by constantType. + + + + Creates a new that references a parameter with the specified name and type. + + A DbParameterReferenceExpression that represents a reference to a parameter with the specified name and type. The result type of the expression will be the same as type. + The type of the referenced parameter. + The name of the referenced parameter. + + + + Creates a new that references a variable with the specified name and type. + + A DbVariableReferenceExpression that represents a reference to a variable with the specified name and type. The result type of the expression will be the same as type. + The type of the referenced variable. + The name of the referenced variable. + + + + Creates a new that references the specified entity or relationship set. + + A new DbScanExpression based on the specified entity or relationship set. + Metadata for the entity or relationship set to reference. + targetSet is null. + + + + Creates an that performs the logical And of the left and right arguments. + + A new DbAndExpression with the specified arguments. + A Boolean expression that specifies the left argument. + A Boolean expression that specifies the right argument. + left or right is null. + left and right does not have a Boolean result type. + + + + Creates an that performs the logical Or of the left and right arguments. + + A new DbOrExpression with the specified arguments. + A Boolean expression that specifies the left argument. + A Boolean expression that specifies the right argument. + left or right is null. + left or right does not have a Boolean result type. + + + + Creates a that matches the result of the specified + expression with the results of the constant expressions in the specified list. + + A DbExpression to be matched. + A list of DbConstantExpression to test for a match. + + A new DbInExpression with the specified arguments. + + + + or + + is null. + + + The result type of + + is different than the result type of an expression from + . + + + + + Creates a that performs the logical negation of the given argument. + + A new DbNotExpression with the specified argument. + A Boolean expression that specifies the argument. + argument is null. + argument does not have a Boolean result type. + + + + Creates a new that divides the left argument by the right argument. + + A new DbArithmeticExpression representing the division operation. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common numeric result type exists between left or right. + + + + Creates a new that subtracts the right argument from the left argument. + + A new DbArithmeticExpression representing the subtraction operation. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common numeric result type exists between left and right. + + + + Creates a new that computes the remainder of the left argument divided by the right argument. + + A new DbArithmeticExpression representing the modulo operation. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common numeric result type exists between left and right. + + + + Creates a new that multiplies the left argument by the right argument. + + A new DbArithmeticExpression representing the multiplication operation. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common numeric result type exists between left and right. + + + + Creates a new that adds the left argument to the right argument. + + A new DbArithmeticExpression representing the addition operation. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common numeric result type exists between left and right. + + + + Creates a new that negates the value of the argument. + + A new DbArithmeticExpression representing the negation operation. + An expression that specifies the argument. + argument is null. + No numeric result type exists for argument. + + + + Creates a new that negates the value of the argument. + + A new DbArithmeticExpression representing the negation operation. + An expression that specifies the argument. + argument is null. + No numeric result type exists for argument. + + + + Creates a new that compares the left and right arguments for equality. + + A new DbComparisonExpression representing the equality comparison. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common equality-comparable result type exists between left and right. + + + + Creates a new that compares the left and right arguments for inequality. + + A new DbComparisonExpression representing the inequality comparison. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common equality-comparable result type exists between left and right. + + + + Creates a new that determines whether the left argument is greater than the right argument. + + A new DbComparisonExpression representing the greater-than comparison. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common order-comparable result type exists between left and right. + + + + Creates a new that determines whether the left argument is less than the right argument. + + A new DbComparisonExpression representing the less-than comparison. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common order-comparable result type exists between left and right. + + + + Creates a new that determines whether the left argument is greater than or equal to the right argument. + + A new DbComparisonExpression representing the greater-than-or-equal-to comparison. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common order-comparable result type exists between left and right. + + + + Creates a new that determines whether the left argument is less than or equal to the right argument. + + A new DbComparisonExpression representing the less-than-or-equal-to comparison. + An expression that specifies the left argument. + An expression that specifies the right argument. + left or right is null. + No common result type that is both equality- and order-comparable exists between left and right. + + + + Creates a new that determines whether the specified argument is null. + + A new DbIsNullExpression with the specified argument. + An expression that specifies the argument. + argument is null. + argument has a collection result type. + + + + Creates a new that compares the specified input string to the given pattern. + + A new DbLikeExpression with the specified input, pattern and a null escape. + An expression that specifies the input string. + An expression that specifies the pattern string. + Argument or pattern is null. + Argument or pattern does not have a string result type. + + + + Creates a new that compares the specified input string to the given pattern using the optional escape. + + A new DbLikeExpression with the specified input, pattern and escape. + An expression that specifies the input string. + An expression that specifies the pattern string. + An optional expression that specifies the escape string. + argument, pattern or escape is null. + argument, pattern or escape does not have a string result type. + + + + Creates a new that applies a cast operation to a polymorphic argument. + + A new DbCastExpression with the specified argument and target type. + The argument to which the cast should be applied. + Type metadata that specifies the type to cast to. + Argument or toType is null. + The specified cast is not valid. + + + + Creates a new . + + A new DbTreatExpression with the specified argument and type. + An expression that specifies the instance. + Type metadata for the treat-as type. + argument or treatType is null. + treatType is not in the same type hierarchy as the result type of argument. + + + + Creates a new that produces a set consisting of the elements of the given input set that are of the specified type. + + + A new DbOfTypeExpression with the specified set argument and type, and an ExpressionKind of + + . + + + A that specifies the input set. + + Type metadata for the type that elements of the input set must have to be included in the resulting set. + argument or type is null. + argument does not have a collection result type, or type is not a type in the same type hierarchy as the element type of the collection result type of argument. + + + + Creates a new that produces a set consisting of the elements of the given input set that are of exactly the specified type. + + + A new DbOfTypeExpression with the specified set argument and type, and an ExpressionKind of + + . + + + An that specifies the input set. + + Type metadata for the type that elements of the input set must match exactly to be included in the resulting set. + argument or type is null. + argument does not have a collection result type, or type is not a type in the same type hierarchy as the element type of the collection result type of argument. + + + + Creates a new that determines whether the given argument is of the specified type or a subtype. + + A new DbIsOfExpression with the specified instance and type and DbExpressionKind IsOf. + An expression that specifies the instance. + Type metadata that specifies the type that the instance's result type should be compared to. + argument or type is null. + type is not in the same type hierarchy as the result type of argument. + + + + Creates a new expression that determines whether the given argument is of the specified type, and only that type (not a subtype). + + A new DbIsOfExpression with the specified instance and type and DbExpressionKind IsOfOnly. + An expression that specifies the instance. + Type metadata that specifies the type that the instance's result type should be compared to. + argument or type is null. + type is not in the same type hierarchy as the result type of argument. + + + + Creates a new that retrieves a specific Entity given a reference expression. + + A new DbDerefExpression that retrieves the specified Entity. + + An that provides the reference. This expression must have a reference Type. + + argument is null. + argument does not have a reference result type. + + + + Creates a new that retrieves the ref of the specifed entity in structural form. + + A new DbEntityRefExpression that retrieves a reference to the specified entity. + The expression that provides the entity. This expression must have an entity result type. + argument is null. + argument does not have an entity result type. + + + + Creates a new that encodes a reference to a specific entity based on key values. + + A new DbRefExpression that references the element with the specified key values in the given entity set. + The entity set in which the referenced element resides. + + A collection of s that provide the key values. These expressions must match (in number, type, and order) the key properties of the referenced entity type. + + entitySet is null, or keyValues is null or contains null. + The count of keyValues does not match the count of key members declared by the entitySet’s element type, or keyValues contains an expression with a result type that is not compatible with the type of the corresponding key member. + + + + Creates a new that encodes a reference to a specific entity based on key values. + + A new DbRefExpression that references the element with the specified key values in the given entity set. + The entity set in which the referenced element resides. + + A collection of s that provide the key values. These expressions must match (in number, type, and order) the key properties of the referenced entity type. + + entitySet is null, or keyValues is null or contains null. + The count of keyValues does not match the count of key members declared by the entitySet’s element type, or keyValues contains an expression with a result type that is not compatible with the type of the corresponding key member. + + + + Creates a new that encodes a reference to a specific entity of a given type based on key values. + + A new DbRefExpression that references the element with the specified key values in the given entity set. + The entity set in which the referenced element resides. + The specific type of the referenced entity. This must be an entity type from the same hierarchy as the entity set's element type. + + A collection of s that provide the key values. These expressions must match (in number, type, and order) the key properties of the referenced entity type. + + entitySet or entityType is null, or keyValues is null or contains null. + entityType is not from the same type hierarchy (a subtype, supertype, or the same type) as entitySet's element type. + The count of keyValues does not match the count of key members declared by the entitySet’s element type, or keyValues contains an expression with a result type that is not compatible with the type of the corresponding key member. + + + + Creates a new that encodes a reference to a specific entity of a given type based on key values. + + A new DbRefExpression that references the element with the specified key values in the given entity set. + The entity set in which the referenced element resides. + The specific type of the referenced entity. This must be an entity type from the same hierarchy as the entity set's element type. + + A collection of s that provide the key values. These expressions must match (in number, type, and order) the key properties of the referenced entity type. + + entitySet or entityType is null, or keyValues is null or contains null. + entityType is not from the same type hierarchy (a subtype, supertype, or the same type) as entitySet's element type. + The count of keyValues does not match the count of key members declared by the entitySet’s element type, or keyValues contains an expression with a result type that is not compatible with the type of the corresponding key member. + + + + Creates a new that encodes a reference to a specific Entity based on key values. + + A new DbRefExpression that references the element with the specified key values in the given Entity set. + The Entity set in which the referenced element resides. + + A that constructs a record with columns that match (in number, type, and order) the Key properties of the referenced Entity type. + + entitySet or keyRow is null. + keyRow does not have a record result type that matches the key properties of the referenced entity set's entity type. + + + + Creates a new that encodes a reference to a specific Entity based on key values. + + A new DbRefExpression that references the element with the specified key values in the given Entity set. + The Entity set in which the referenced element resides. + + A that constructs a record with columns that match (in number, type, and order) the Key properties of the referenced Entity type. + + The type of the Entity that the reference should refer to. + entitySet, keyRow or entityType is null. + entityType is not in the same type hierarchy as the entity set's entity type, or keyRow does not have a record result type that matches the key properties of the referenced entity set's entity type. + + + + Creates a new that retrieves the key values of the specifed reference in structural form. + + A new DbRefKeyExpression that retrieves the key values of the specified reference. + The expression that provides the reference. This expression must have a reference Type with an Entity element type. + argument is null. + argument does not have a reference result type. + + + + Creates a new representing the navigation of a composition or association relationship. + + A new DbRelationshipNavigationExpression representing the navigation of the specified from and to relation ends of the specified relation type from the specified navigation source instance. + An expression that specifies the instance from which navigation should occur. + Metadata for the property that represents the end of the relationship from which navigation should occur. + Metadata for the property that represents the end of the relationship to which navigation should occur. + fromEnd, toEnd or navigateFrom is null. + fromEnd and toEnd are not declared by the same relationship type, or navigateFrom has a result type that is not compatible with the property type of fromEnd. + + + + Creates a new representing the navigation of a composition or association relationship. + + A new DbRelationshipNavigationExpression representing the navigation of the specified from and to relation ends of the specified relation type from the specified navigation source instance. + Metadata for the relation type that represents the relationship. + The name of the property of the relation type that represents the end of the relationship from which navigation should occur. + The name of the property of the relation type that represents the end of the relationship to which navigation should occur. + An expression the specifies the instance from which naviagtion should occur. + type, fromEndName, toEndName or navigateFrom is null. + type is not associated with this command tree's metadata workspace or navigateFrom is associated with a different command tree, or type does not declare a relation end property with name toEndName or fromEndName, or navigateFrom has a result type that is not compatible with the property type of the relation end property with name fromEndName. + + + + Creates a new that removes duplicates from the given set argument. + + A new DbDistinctExpression that represents the distinct operation applied to the specified set argument. + An expression that defines the set over which to perfom the distinct operation. + argument is null. + argument does not have a collection result type. + + + + Creates a new that converts a set into a singleton. + + A DbElementExpression that represents the conversion of the set argument to a singleton. + An expression that specifies the input set. + argument is null. + argument does not have a collection result type. + + + + Creates a new that determines whether the specified set argument is an empty set. + + A new DbIsEmptyExpression with the specified argument. + An expression that specifies the input set. + argument is null. + argument does not have a collection result type. + + + + Creates a new that computes the subtraction of the right set argument from the left set argument. + + A new DbExceptExpression that represents the difference of the left argument from the right argument. + An expression that defines the left set argument. + An expression that defines the right set argument. + left or right is null. + No common collection result type exists between left and right. + + + + Creates a new that computes the intersection of the left and right set arguments. + + A new DbIntersectExpression that represents the intersection of the left and right arguments. + An expression that defines the left set argument. + An expression that defines the right set argument. + left or right is null. + No common collection result type exists between left or right. + + + + Creates a new that computes the union of the left and right set arguments and does not remove duplicates. + + A new DbUnionAllExpression that union, including duplicates, of the the left and right arguments. + An expression that defines the left set argument. + An expression that defines the right set argument. + left or right is null. + No common collection result type with an equality-comparable element type exists between left and right. + + + + Creates a new that restricts the number of elements in the Argument collection to the specified count Limit value. Tied results are not included in the output. + + A new DbLimitExpression with the specified argument and count limit values that does not include tied results. + An expression that specifies the input collection. + An expression that specifies the limit value. + argument or count is null. + argument does not have a collection result type, or count does not have a result type that is equal or promotable to a 64-bit integer type. + + + + Creates a new . + + A new DbCaseExpression with the specified cases and default result. + A list of expressions that provide the conditional for of each case. + A list of expressions that provide the result of each case. + An expression that defines the result when no case is matched. + whenExpressions or thenExpressions is null or contains null, or elseExpression is null. + whenExpressions or thenExpressions is empty or whenExpressions contains an expression with a non-Boolean result type, or no common result type exists for all expressions in thenExpressions and elseExpression. + + + + Creates a new representing the invocation of the specified function with the given arguments. + + A new DbFunctionExpression representing the function invocation. + Metadata for the function to invoke. + A list of expressions that provide the arguments to the function. + function is null, or arguments is null or contains null. + The count of arguments does not equal the number of parameters declared by function, or arguments contains an expression that has a result type that is not equal or promotable to the corresponding function parameter type. + + + + Creates a new representing the invocation of the specified function with the given arguments. + + A new DbFunctionExpression representing the function invocation. + Metadata for the function to invoke. + Expressions that provide the arguments to the function. + function is null, or arguments is null or contains null. + The count of arguments does not equal the number of parameters declared by function, or arguments contains an expression that has a result type that is not equal or promotable to the corresponding function parameter type. + + + + Creates a new representing the application of the specified Lambda function to the given arguments. + + A new Expression representing the Lambda function application. + + A instance representing the Lambda function to apply. + + A list of expressions that provide the arguments. + lambda or arguments is null. + The count of arguments does not equal the number of variables declared by lambda, or arguments contains an expression that has a result type that is not equal or promotable to the corresponding variable type. + + + + Creates a new representing the application of the specified Lambda function to the given arguments. + + A new expression representing the Lambda function application. + + A instance representing the Lambda function to apply. + + Expressions that provide the arguments. + lambda or arguments is null. + The count of arguments does not equal the number of variables declared by lambda, or arguments contains an expression that has a result type that is not equal or promotable to the corresponding variable type. + + + + Creates a new . If the type argument is a collection type, the arguments specify the elements of the collection. Otherwise the arguments are used as property or column values in the new instance. + + A new DbNewInstanceExpression with the specified type and arguments. + The type of the new instance. + Expressions that specify values of the new instances, interpreted according to the instance's type. + instanceType or arguments is null, or arguments contains null. + arguments is empty or the result types of the contained expressions do not match the requirements of instanceType (as explained in the remarks section). + + + + Creates a new . If the type argument is a collection type, the arguments specify the elements of the collection. Otherwise the arguments are used as property or column values in the new instance. + + A new DbNewInstanceExpression with the specified type and arguments. + The type of the new instance. + Expressions that specify values of the new instances, interpreted according to the instance's type. + instanceType or arguments is null, or arguments contains null. + arguments is empty or the result types of the contained expressions do not match the requirements of instanceType (as explained in the remarks section). + + + + Creates a new that constructs a collection containing the specified elements. The type of the collection is based on the common type of the elements. If no common element type exists an exception is thrown. + + A new DbNewInstanceExpression with the specified collection type and arguments. + A list of expressions that provide the elements of the collection. + elements is null, or contains null. + elements is empty or contains expressions for which no common result type exists. + + + + Creates a new that constructs a collection containing the specified elements. The type of the collection is based on the common type of the elements. If no common element type exists an exception is thrown. + + A new DbNewInstanceExpression with the specified collection type and arguments. + A list of expressions that provide the elements of the collection. + elements is null, or contains null.. + elements is empty or contains expressions for which no common result type exists. + + + + Creates a new that constructs an empty collection of the specified collection type. + + A new DbNewInstanceExpression with the specified collection type and an empty Arguments list. + The type metadata for the collection to create + collectionType is null. + collectionType is not a collection type. + + + + Creates a new that produces a row with the specified named columns and the given values, specified as expressions. + + A new DbNewInstanceExpression that represents the construction of the row. + A list of string-DbExpression key-value pairs that defines the structure and values of the row. + columnValues is null or contains an element with a null column name or expression. + columnValues is empty, or contains a duplicate or invalid column name. + + + + Creates a new representing the retrieval of the specified property. + + A new DbPropertyExpression representing the property retrieval. + The instance from which to retrieve the property. May be null if the property is static. + Metadata for the property to retrieve. + propertyMetadata is null or instance is null and the property is not static. + + + + Creates a new representing the retrieval of the specified navigation property. + + A new DbPropertyExpression representing the navigation property retrieval. + The instance from which to retrieve the navigation property. + Metadata for the navigation property to retrieve. + navigationProperty or instance is null. + + + + Creates a new representing the retrieval of the specified relationship end member. + + A new DbPropertyExpression representing the relationship end member retrieval. + The instance from which to retrieve the relationship end member. + Metadata for the relationship end member to retrieve. + relationshipEnd is null or instance is null and the property is not static. + + + + Creates a new representing the retrieval of the instance property with the specified name from the given instance. + + A new DbPropertyExpression that represents the property retrieval. + The instance from which to retrieve the property. + The name of the property to retrieve. + propertyName is null or instance is null and the property is not static. + No property with the specified name is declared by the type of instance. + + + + Creates a new representing setting a property to a value. + + The property to be set. + The value to set the property to. + The newly created set clause. + + + + Creates a new that determines whether the given predicate holds for all elements of the input set. + + A new DbQuantifierExpression that represents the All operation. + An expression that specifies the input set. + A method representing a predicate to evaluate for each member of the input set. This method must produce an expression with a Boolean result type that provides the predicate logic. + source or predicate is null. + The expression produced by predicate is null. + source does not have a collection result type. + The expression produced by Predicate does not have a Boolean result type. + + + + Creates a new that determines whether the specified set argument is non-empty. + + + A new applied to a new + + with the specified argument. + + An expression that specifies the input set. + source is null. + source does not have a collection result type. + + + + Creates a new that determines whether the specified set argument is non-empty. + + + A new applied to a new + + with the specified argument. + + An expression that specifies the input set. + argument is null. + argument does not have a collection result type. + + + + Creates a new that determines whether the given predicate holds for any element of the input set. + + A new DbQuantifierExpression that represents the Any operation. + An expression that specifies the input set. + A method representing the predicate to evaluate for each member of the input set. This method must produce an expression with a Boolean result type that provides the predicate logic. + source or predicate is null. + The expression produced by predicate is null. + source does not have a collection result type. + The expression produced by predicate does not have a Boolean result type. + + + + Creates a new that evaluates the given apply expression once for each element of a given input set, producing a collection of rows with corresponding input and apply columns. Rows for which apply evaluates to an empty set are not included. + + + An new DbApplyExpression with the specified input and apply bindings and an + + of CrossApply. + + + A that specifies the input set. + + A method that specifies the logic to evaluate once for each member of the input set. + source or apply is null. + source does not have a collection result type. + The result of apply contains a name or expression that is null. + The result of apply contains a name or expression that is not valid in an expression binding. + + + + Creates a new that evaluates the given apply expression once for each element of a given input set, producing a collection of rows with corresponding input and apply columns. Rows for which apply evaluates to an empty set have an apply column value of null. + + + An new DbApplyExpression with the specified input and apply bindings and an + + of OuterApply. + + + A that specifies the input set. + + A method that specifies the logic to evaluate once for each member of the input set. + source or apply is null. + Source does not have a collection result type. + The result of apply contains a name or expression that is null. + The result of apply contains a name or expression that is not valid in an expression binding. + + + + Creates a new that joins the sets specified by the left and right expressions, on the specified join condition, using FullOuterJoin as the + + . + + + A new DbJoinExpression, with an of FullOuterJoin, that represents the full outer join operation applied to the left and right input sets under the given join condition. + + + A that specifies the left set argument. + + + A that specifies the right set argument. + + A method representing the condition on which to join. This method must produce an expression with a Boolean result type that provides the logic of the join condition. + left, right or joinCondition is null. + left or right does not have a collection result type. + The expression produced by joinCondition is null. + The expression produced by joinCondition does not have a Boolean result type. + + + + Creates a new that joins the sets specified by the left and right expressions, on the specified join condition, using InnerJoin as the + + . + + + A new DbJoinExpression, with an of InnerJoin, that represents the inner join operation applied to the left and right input sets under the given join condition. + + + A that specifies the left set argument. + + + A that specifies the right set argument. + + A method representing the condition on which to join. This method must produce an expression with a Boolean result type that provides the logic of the join condition. + left, right or joinCondition is null. + left or right does not have a collection result type. + The expression produced by joinCondition is null. + The expression produced by joinCondition does not have a Boolean result type. + + + + Creates a new that joins the sets specified by the left and right expressions, on the specified join condition, using LeftOuterJoin as the + + . + + + A new DbJoinExpression, with an of LeftOuterJoin, that represents the left outer join operation applied to the left and right input sets under the given join condition. + + + A that specifies the left set argument. + + + A that specifies the right set argument. + + A method representing the condition on which to join. This method must produce an expression with a Boolean result type that provides the logic of the join condition. + left, right or joinCondition is null. + left or right does not have a collection result type. + The expression produced by joinCondition is null. + The expression produced by joinCondition does not have a Boolean result type. + + + + Creates a new that joins the sets specified by the outer and inner expressions, on an equality condition between the specified outer and inner keys, using InnerJoin as the + + . + + + A new DbJoinExpression, with an of InnerJoin, that represents the inner join operation applied to the left and right input sets under a join condition that compares the outer and inner key values for equality. + + + A that specifies the outer set argument. + + + A that specifies the inner set argument. + + A method that specifies how the outer key value should be derived from an element of the outer set. + A method that specifies how the inner key value should be derived from an element of the inner set. + outer, inner, outerKey or innerKey is null. + outer or inner does not have a collection result type. + The expression produced by outerKey or innerKey is null. + The expressions produced by outerKey and innerKey are not comparable for equality. + + + + Creates a new that projects the specified selector over the sets specified by the outer and inner expressions, joined on an equality condition between the specified outer and inner keys, using InnerJoin as the + + . + + + A new DbProjectExpression with the specified selector as its projection, and a new DbJoinExpression as its input. The input DbJoinExpression is created with an + + of InnerJoin, that represents the inner join operation applied to the left and right input sets under a join condition that compares the outer and inner key values for equality. + + + A that specifies the outer set argument. + + + A that specifies the inner set argument. + + A method that specifies how the outer key value should be derived from an element of the outer set. + A method that specifies how the inner key value should be derived from an element of the inner set. + + A method that specifies how an element of the result set should be derived from elements of the inner and outer sets. This method must produce an instance of a type that is compatible with Join and can be resolved into a + + . Compatibility requirements for TSelector are described in remarks. + + The type of the selector . + outer, inner, outerKey, innerKey or selector is null. + outer or inner does not have a collection result type. + The expression produced by outerKey or innerKey is null. + The result of selector is null after conversion to DbExpression. + The expressions produced by outerKey and innerKey is not comparable for equality. + The result of Selector is not compatible with SelectMany. + + + + Creates a new that sorts the given input set by the specified sort key, with ascending sort order and default collation. + + A new DbSortExpression that represents the order-by operation. + An expression that specifies the input set. + A method that specifies how to derive the sort key expression given a member of the input set. This method must produce an expression with an order-comparable result type that provides the sort key definition. + source or sortKey is null. + The expression produced by sortKey is null. + source does not have a collection result type. + The expression produced by sortKey does not have an order-comparable result type. + + + + Creates a new that sorts the given input set by the specified sort key, with ascending sort order and the specified collation. + + A new DbSortExpression that represents the order-by operation. + An expression that specifies the input set. + A method that specifies how to derive the sort key expression given a member of the input set. This method must produce an expression with an order-comparable result type that provides the sort key definition. + The collation to sort under. + source, sortKey or collation is null. + The expression produced by sortKey is null. + source does not have a collection result type. + The expression produced by sortKey does not have an order-comparable string result type. + collation is empty or contains only space characters. + + + + Creates a new that sorts the given input set by the specified sort key, with descending sort order and default collation. + + A new DbSortExpression that represents the order-by operation. + An expression that specifies the input set. + A method that specifies how to derive the sort key expression given a member of the input set. This method must produce an expression with an order-comparable result type that provides the sort key definition. + source or sortKey is null. + The expression produced by sortKey is null. + source does not have a collection result type. + The expression produced by sortKey does not have an order-comparable result type. + + + + Creates a new that sorts the given input set by the specified sort key, with descending sort order and the specified collation. + + A new DbSortExpression that represents the order-by operation. + An expression that specifies the input set. + A method that specifies how to derive the sort key expression given a member of the input set. This method must produce an expression with an order-comparable result type that provides the sort key definition. + The collation to sort under. + source, sortKey or collation is null. + The expression produced by sortKey is null. + source does not have a collection result type. + The expression produced by sortKey does not have an order-comparable string result type. + collation is empty or contains only space characters. + + + + Creates a new that selects the specified expression over the given input set. + + A new DbProjectExpression that represents the select operation. + An expression that specifies the input set. + + A method that specifies how to derive the projected expression given a member of the input set. This method must produce an instance of a type that is compatible with Select and can be resolved into a + + . Compatibility requirements for TProjection are described in remarks. + + The method result type of projection. + source or projection is null. + The result of projection is null. + + + + Creates a new that evaluates the given apply expression once for each element of a given input set, producing a collection of rows with corresponding input and apply columns. Rows for which apply evaluates to an empty set are not included. A + + is then created that selects the apply column from each row, producing the overall collection of apply results. + + + An new DbProjectExpression that selects the apply column from a new DbApplyExpression with the specified input and apply bindings and an + + of CrossApply. + + + A that specifies the input set. + + A method that represents the logic to evaluate once for each member of the input set. + source or apply is null. + The expression produced by apply is null. + source does not have a collection result type. + The expression produced by apply does not have a collection type. + + + + Creates a new that evaluates the given apply expression once for each element of a given input set, producing a collection of rows with corresponding input and apply columns. Rows for which apply evaluates to an empty set are not included. A + + is then created that selects the specified selector over each row, producing the overall collection of results. + + + An new DbProjectExpression that selects the result of the given selector from a new DbApplyExpression with the specified input and apply bindings and an + + of CrossApply. + + + A that specifies the input set. + + A method that represents the logic to evaluate once for each member of the input set. + + A method that specifies how an element of the result set should be derived given an element of the input and apply sets. This method must produce an instance of a type that is compatible with SelectMany and can be resolved into a + + . Compatibility requirements for TSelector are described in remarks. + + The method result type of selector. + source, apply or selector is null. + The expression produced by apply is null. + The result of selector is null on conversion to DbExpression. + source does not have a collection result type. + The expression produced by apply does not have a collection type. does not have a collection type. + + + + Creates a new that skips the specified number of elements from the given sorted input set. + + A new DbSkipExpression that represents the skip operation. + + A that specifies the sorted input set. + + An expression the specifies how many elements of the ordered set to skip. + argument or count is null. + + count is not or + + or has a result type that is not equal or promotable to a 64-bit integer type. + + + + + Creates a new that restricts the number of elements in the Argument collection to the specified count Limit value. Tied results are not included in the output. + + A new DbLimitExpression with the specified argument and count limit values that does not include tied results. + An expression that specifies the input collection. + An expression that specifies the limit value. + argument or count is null. + argument does not have a collection result type, count does not have a result type that is equal or promotable to a 64-bit integer type. + + + + Creates a new that with a sort order that includes the sort order of the given order input set together with the specified sort key in ascending sort order and with default collation. + + A new DbSortExpression that represents the new overall order-by operation. + A DbSortExpression that specifies the ordered input set. + A method that specifies how to derive the additional sort key expression given a member of the input set. This method must produce an expression with an order-comparable result type that provides the sort key definition. + source or sortKey is null. + The expression produced by sortKey is null. + source does not have a collection result type. + sortKey does not have an order-comparable result type. + + + + Creates a new that with a sort order that includes the sort order of the given order input set together with the specified sort key in ascending sort order and with the specified collation. + + A new DbSortExpression that represents the new overall order-by operation. + A DbSortExpression that specifies the ordered input set. + A method that specifies how to derive the additional sort key expression given a member of the input set. This method must produce an expression with an order-comparable result type that provides the sort key definition. + The collation to sort under. + source, sortKey or collation is null. + The expression produced by sortKey is null. + source does not have a collection result type. + The expression produced by sortKey does not have an order-comparable string result type. + collation is empty or contains only space characters. + + + + Creates a new that with a sort order that includes the sort order of the given order input set together with the specified sort key in descending sort order and with default collation. + + A new DbSortExpression that represents the new overall order-by operation. + A DbSortExpression that specifies the ordered input set. + A method that specifies how to derive the additional sort key expression given a member of the input set. This method must produce an expression with an order-comparable result type that provides the sort key definition. + source or sortKey is null. + The expression produced by sortKey is null. + source does not have a collection result type. + The expression produced by sortKey does not have an order-comparable result type. + + + + Creates a new that with a sort order that includes the sort order of the given order input set together with the specified sort key in descending sort order and with the specified collation. + + A new DbSortExpression that represents the new overall order-by operation. + A DbSortExpression that specifies the ordered input set. + A method that specifies how to derive the additional sort key expression given a member of the input set. This method must produce an expression with an order-comparable result type that provides the sort key definition. + The collation to sort under. + source, sortKey or collation is null. + The expression produced by sortKey is null. + source does not have a collection result type. + The expression produced by sortKey does not have an order-comparable string result type. + collation is empty or contains only space characters. + + + + Creates a new that filters the elements in the given input set using the specified predicate. + + A new DbQuantifierExpression that represents the Any operation. + An expression that specifies the input set. + A method representing the predicate to evaluate for each member of the input set. This method must produce an expression with a Boolean result type that provides the predicate logic. + source or predicate is null. + The expression produced by predicate is null. + The expression produced by predicate does not have a Boolean result type. + + + + Creates a new that computes the union of the left and right set arguments with duplicates removed. + + A new DbExpression that computes the union, without duplicates, of the the left and right arguments. + An expression that defines the left set argument. + An expression that defines the right set argument. + left or right is null. + No common collection result type with an equality-comparable element type exists between left and right. + + + + Gets a with the Boolean value true. + + + A with the Boolean value true. + + + + + Gets a with the Boolean value false. + + + A with the Boolean value false. + + + + + Provides an API to construct s that invoke canonical EDM functions, and allows that API to be accessed as extension methods on the expression type itself. + + + + + Creates a that invokes the canonical 'Avg' function over the specified collection. The result type of the expression is the same as the element type of the collection. + + A new DbFunctionExpression that produces the average value. + An expression that specifies the collection from which the average value should be computed. + + + + Creates a that invokes the canonical 'Count' function over the specified collection. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that produces the count value. + An expression that specifies the collection over which the count value should be computed. + + + + Creates a that invokes the canonical 'BigCount' function over the specified collection. The result type of the expression is Edm.Int64. + + A new DbFunctionExpression that produces the count value. + An expression that specifies the collection over which the count value should be computed. + + + + Creates a that invokes the canonical 'Max' function over the specified collection. The result type of the expression is the same as the element type of the collection. + + A new DbFunctionExpression that produces the maximum value. + An expression that specifies the collection from which the maximum value should be retrieved + + + + Creates a that invokes the canonical 'Min' function over the specified collection. The result type of the expression is the same as the element type of the collection. + + A new DbFunctionExpression that produces the minimum value. + An expression that specifies the collection from which the minimum value should be retrieved. + + + + Creates a that invokes the canonical 'Sum' function over the specified collection. The result type of the expression is the same as the element type of the collection. + + A new DbFunctionExpression that produces the sum. + An expression that specifies the collection from which the sum should be computed. + + + + Creates a that invokes the canonical 'StDev' function over the non-null members of the specified collection. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that produces the standard deviation value over non-null members of the collection. + An expression that specifies the collection for which the standard deviation should be computed. + + + + Creates a that invokes the canonical 'StDevP' function over the population of the specified collection. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that produces the standard deviation value. + An expression that specifies the collection for which the standard deviation should be computed. + + + + Creates a that invokes the canonical 'Var' function over the non-null members of the specified collection. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that produces the statistical variance value for the non-null members of the collection. + An expression that specifies the collection for which the statistical variance should be computed. + + + + Creates a that invokes the canonical 'VarP' function over the population of the specified collection. The result type of the expression Edm.Double. + + A new DbFunctionExpression that produces the statistical variance value. + An expression that specifies the collection for which the statistical variance should be computed. + + + + Creates a that invokes the canonical 'Concat' function with the specified arguments, which must each have a string result type. The result type of the expression is string. + + A new DbFunctionExpression that produces the concatenated string. + An expression that specifies the string that should appear first in the concatenated result string. + An expression that specifies the string that should appear second in the concatenated result string. + + + + Creates a that invokes the canonical 'Contains' function with the specified arguments, which must each have a string result type. The result type of the expression is Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether or not searchedForString occurs within searchedString. + An expression that specifies the string to search for any occurence of searchedForString. + An expression that specifies the string to search for in searchedString. + + + + Creates a that invokes the canonical 'EndsWith' function with the specified arguments, which must each have a string result type. The result type of the expression is Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether or not stringArgument ends with suffix. + An expression that specifies the string that is searched at the end for string suffix. + An expression that specifies the target string that is searched for at the end of stringArgument. + + + + Creates a that invokes the canonical 'IndexOf' function with the specified arguments, which must each have a string result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the first index of stringToFind in searchString. + An expression that specifies the string to search for stringToFind. + An expression that specifies the string to locate within searchString should be checked. + + + + Creates a that invokes the canonical 'Left' function with the specified arguments, which must have a string and integer numeric result type. The result type of the expression is string. + + A new DbFunctionExpression that returns the the leftmost substring of length length from stringArgument. + An expression that specifies the string from which to extract the leftmost substring. + An expression that specifies the length of the leftmost substring to extract from stringArgument. + + + + Creates a that invokes the canonical 'Length' function with the specified argument, which must have a string result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the length of stringArgument. + An expression that specifies the string for which the length should be computed. + + + + Creates a that invokes the canonical 'Replace' function with the specified arguments, which must each have a string result type. The result type of the expression is also string. + + A new DbFunctionExpression than returns a new string based on stringArgument where every occurence of toReplace is replaced by replacement. + An expression that specifies the string in which to perform the replacement operation. + An expression that specifies the string that is replaced. + An expression that specifies the replacement string. + + + + Creates a that invokes the canonical 'Reverse' function with the specified argument, which must have a string result type. The result type of the expression is also string. + + A new DbFunctionExpression that produces the reversed value of stringArgument. + An expression that specifies the string to reverse. + + + + Creates a that invokes the canonical 'Right' function with the specified arguments, which must have a string and integer numeric result type. The result type of the expression is string. + + A new DbFunctionExpression that returns the the rightmost substring of length length from stringArgument. + An expression that specifies the string from which to extract the rightmost substring. + An expression that specifies the length of the rightmost substring to extract from stringArgument. + + + + Creates a that invokes the canonical 'StartsWith' function with the specified arguments, which must each have a string result type. The result type of the expression is Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether or not stringArgument starts with prefix. + An expression that specifies the string that is searched at the start for string prefix. + An expression that specifies the target string that is searched for at the start of stringArgument. + + + + Creates a that invokes the canonical 'Substring' function with the specified arguments, which must have a string and integer numeric result types. The result type of the expression is string. + + A new DbFunctionExpression that returns the substring of length length from stringArgument starting at start. + An expression that specifies the string from which to extract the substring. + An expression that specifies the starting index from which the substring should be taken. + An expression that specifies the length of the substring. + + + + Creates a that invokes the canonical 'ToLower' function with the specified argument, which must have a string result type. The result type of the expression is also string. + + A new DbFunctionExpression that returns value of stringArgument converted to lower case. + An expression that specifies the string that should be converted to lower case. + + + + Creates a that invokes the canonical 'ToUpper' function with the specified argument, which must have a string result type. The result type of the expression is also string. + + A new DbFunctionExpression that returns value of stringArgument converted to upper case. + An expression that specifies the string that should be converted to upper case. + + + + Creates a that invokes the canonical 'Trim' function with the specified argument, which must have a string result type. The result type of the expression is also string. + + A new DbFunctionExpression that returns value of stringArgument with leading and trailing space removed. + An expression that specifies the string from which leading and trailing space should be removed. + + + + Creates a that invokes the canonical 'RTrim' function with the specified argument, which must have a string result type. The result type of the expression is also string. + + A new DbFunctionExpression that returns value of stringArgument with trailing space removed. + An expression that specifies the string from which trailing space should be removed. + + + + Creates a that invokes the canonical 'LTrim' function with the specified argument, which must have a string result type. The result type of the expression is also string. + + A new DbFunctionExpression that returns value of stringArgument with leading space removed. + An expression that specifies the string from which leading space should be removed. + + + + Creates a that invokes the canonical 'Year' function with the specified argument, which must have a DateTime or DateTimeOffset result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the integer year value from dateValue. + An expression that specifies the value from which the year should be retrieved. + + + + Creates a that invokes the canonical 'Month' function with the specified argument, which must have a DateTime or DateTimeOffset result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the integer month value from dateValue. + An expression that specifies the value from which the month should be retrieved. + + + + Creates a that invokes the canonical 'Day' function with the specified argument, which must have a DateTime or DateTimeOffset result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the integer day value from dateValue. + An expression that specifies the value from which the day should be retrieved. + + + + Creates a that invokes the canonical 'DayOfYear' function with the specified argument, which must have a DateTime or DateTimeOffset result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the integer day of year value from dateValue. + An expression that specifies the value from which the day within the year should be retrieved. + + + + Creates a that invokes the canonical 'Hour' function with the specified argument, which must have a DateTime, DateTimeOffset or Time result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the integer hour value from timeValue. + An expression that specifies the value from which the hour should be retrieved. + + + + Creates a that invokes the canonical 'Minute' function with the specified argument, which must have a DateTime, DateTimeOffset or Time result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the integer minute value from timeValue. + An expression that specifies the value from which the minute should be retrieved. + + + + Creates a that invokes the canonical 'Second' function with the specified argument, which must have a DateTime, DateTimeOffset or Time result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the integer second value from timeValue. + An expression that specifies the value from which the second should be retrieved. + + + + Creates a that invokes the canonical 'Millisecond' function with the specified argument, which must have a DateTime, DateTimeOffset or Time result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the integer millisecond value from timeValue. + An expression that specifies the value from which the millisecond should be retrieved. + + + + Creates a that invokes the canonical 'GetTotalOffsetMinutes' function with the specified argument, which must have a DateTimeOffset result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the number of minutes dateTimeOffsetArgument is offset from GMT. + An expression that specifies the DateTimeOffset value from which the minute offset from GMT should be retrieved. + + + + Creates a that invokes the canonical 'CurrentDateTime' function. + + A new DbFunctionExpression that returns the current date and time as an Edm.DateTime instance. + + + + Creates a that invokes the canonical 'CurrentDateTimeOffset' function. + + A new DbFunctionExpression that returns the current date and time as an Edm.DateTimeOffset instance. + + + + Creates a that invokes the canonical 'CurrentUtcDateTime' function. + + A new DbFunctionExpression that returns the current UTC date and time as an Edm.DateTime instance. + + + + Creates a that invokes the canonical 'TruncateTime' function with the specified argument, which must have a DateTime or DateTimeOffset result type. The result type of the expression is the same as the result type of dateValue. + + A new DbFunctionExpression that returns the value of dateValue with time set to zero. + An expression that specifies the value for which the time portion should be truncated. + + + + Creates a that invokes the canonical 'CreateDateTime' function with the specified arguments. second must have a result type of Edm.Double, while all other arguments must have a result type of Edm.Int32. The result type of the expression is Edm.DateTime. + + A new DbFunctionExpression that returns a new DateTime based on the specified values. + An expression that provides the year value for the new DateTime instance. + An expression that provides the month value for the new DateTime instance. + An expression that provides the day value for the new DateTime instance. + An expression that provides the hour value for the new DateTime instance. + An expression that provides the minute value for the new DateTime instance. + An expression that provides the second value for the new DateTime instance. + + + + Creates a that invokes the canonical 'CreateDateTimeOffset' function with the specified arguments. second must have a result type of Edm.Double, while all other arguments must have a result type of Edm.Int32. The result type of the expression is Edm.DateTimeOffset. + + A new DbFunctionExpression that returns a new DateTimeOffset based on the specified values. + An expression that provides the year value for the new DateTimeOffset instance. + An expression that provides the month value for the new DateTimeOffset instance. + An expression that provides the day value for the new DateTimeOffset instance. + An expression that provides the hour value for the new DateTimeOffset instance. + An expression that provides the minute value for the new DateTimeOffset instance. + An expression that provides the second value for the new DateTimeOffset instance. + An expression that provides the number of minutes in the time zone offset value for the new DateTimeOffset instance. + + + + Creates a that invokes the canonical 'CreateTime' function with the specified arguments. second must have a result type of Edm.Double, while all other arguments must have a result type of Edm.Int32. The result type of the expression is Edm.Time. + + A new DbFunctionExpression that returns a new Time based on the specified values. + An expression that provides the hour value for the new DateTime instance. + An expression that provides the minute value for the new DateTime instance. + An expression that provides the second value for the new DateTime instance. + + + + Creates a that invokes the canonical 'AddYears' function with the specified arguments, which must have DateTime or DateTimeOffset and integer result types. The result type of the expression is the same as the result type of dateValue. + + A new DbFunctionExpression that adds the number of years specified by addValue to the value specified by dateValue. + An expression that specifies the value to which addValueshould be added. + An expression that specifies the number of years to add to dateValue. + + + + Creates a that invokes the canonical 'AddMonths' function with the specified arguments, which must have DateTime or DateTimeOffset and integer result types. The result type of the expression is the same as the result type of dateValue. + + A new DbFunctionExpression that adds the number of months specified by addValue to the value specified by dateValue. + An expression that specifies the value to which addValueshould be added. + An expression that specifies the number of months to add to dateValue. + + + + Creates a that invokes the canonical 'AddDays' function with the specified arguments, which must have DateTime or DateTimeOffset and integer result types. The result type of the expression is the same as the result type of dateValue. + + A new DbFunctionExpression that adds the number of days specified by addValue to the value specified by dateValue. + An expression that specifies the value to which addValueshould be added. + An expression that specifies the number of days to add to dateValue. + + + + Creates a that invokes the canonical 'AddHours' function with the specified arguments, which must have DateTime, DateTimeOffset or Time, and integer result types. The result type of the expression is the same as the result type of timeValue. + + A new DbFunctionExpression that adds the number of hours specified by addValue to the value specified by timeValue. + An expression that specifies the value to which addValueshould be added. + An expression that specifies the number of hours to add to timeValue. + + + + Creates a that invokes the canonical 'AddMinutes' function with the specified arguments, which must have DateTime, DateTimeOffset or Time, and integer result types. The result type of the expression is the same as the result type of timeValue. + + A new DbFunctionExpression that adds the number of minutes specified by addValue to the value specified by timeValue. + An expression that specifies the value to which addValueshould be added. + An expression that specifies the number of minutes to add to timeValue. + + + + Creates a that invokes the canonical 'AddSeconds' function with the specified arguments, which must have DateTime, DateTimeOffset or Time, and integer result types. The result type of the expression is the same as the result type of timeValue. + + A new DbFunctionExpression that adds the number of seconds specified by addValue to the value specified by timeValue. + An expression that specifies the value to which addValueshould be added. + An expression that specifies the number of seconds to add to timeValue. + + + + Creates a that invokes the canonical 'AddMilliseconds' function with the specified arguments, which must have DateTime, DateTimeOffset or Time, and integer result types. The result type of the expression is the same as the result type of timeValue. + + A new DbFunctionExpression that adds the number of milliseconds specified by addValue to the value specified by timeValue. + An expression that specifies the value to which addValueshould be added. + An expression that specifies the number of milliseconds to add to timeValue. + + + + Creates a that invokes the canonical 'AddMicroseconds' function with the specified arguments, which must have DateTime, DateTimeOffset or Time, and integer result types. The result type of the expression is the same as the result type of timeValue. + + A new DbFunctionExpression that adds the number of microseconds specified by addValue to the value specified by timeValue. + An expression that specifies the value to which addValueshould be added. + An expression that specifies the number of microseconds to add to timeValue. + + + + Creates a that invokes the canonical 'AddNanoseconds' function with the specified arguments, which must have DateTime, DateTimeOffset or Time, and integer result types. The result type of the expression is the same as the result type of timeValue. + + A new DbFunctionExpression that adds the number of nanoseconds specified by addValue to the value specified by timeValue. + An expression that specifies the value to which addValueshould be added. + An expression that specifies the number of nanoseconds to add to timeValue. + + + + Creates a that invokes the canonical 'DiffYears' function with the specified arguments, which must each have DateTime or DateTimeOffset result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the number of years that is the difference between dateValue1 and dateValue2. + An expression that specifies the first date value argument. + An expression that specifies the second date value argument. + + + + Creates a that invokes the canonical 'DiffMonths' function with the specified arguments, which must each have DateTime or DateTimeOffset result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the number of months that is the difference between dateValue1 and dateValue2. + An expression that specifies the first date value argument. + An expression that specifies the second date value argument. + + + + Creates a that invokes the canonical 'DiffDays' function with the specified arguments, which must each have DateTime or DateTimeOffset result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the number of days that is the difference between dateValue1 and dateValue2. + An expression that specifies the first date value argument. + An expression that specifies the second date value argument. + + + + Creates a that invokes the canonical 'DiffHours' function with the specified arguments, which must each have DateTime, DateTimeOffset or Time result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the number of hours that is the difference between timeValue1 and timeValue2. + An expression that specifies the first time value argument. + An expression that specifies the second time value argument. + + + + Creates a that invokes the canonical 'DiffMinutes' function with the specified arguments, which must each have DateTime, DateTimeOffset or Time result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the number of minutes that is the difference between timeValue1 and timeValue2. + An expression that specifies the first time value argument. + An expression that specifies the second time value argument. + + + + Creates a that invokes the canonical 'DiffSeconds' function with the specified arguments, which must each have DateTime, DateTimeOffset or Time result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the number of seconds that is the difference between timeValue1 and timeValue2. + An expression that specifies the first time value argument. + An expression that specifies the second time value argument. + + + + Creates a that invokes the canonical 'DiffMilliseconds' function with the specified arguments, which must each have DateTime, DateTimeOffset or Time result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the number of milliseconds that is the difference between timeValue1 and timeValue2. + An expression that specifies the first time value argument. + An expression that specifies the second time value argument. + + + + Creates a that invokes the canonical 'DiffMicroseconds' function with the specified arguments, which must each have DateTime, DateTimeOffset or Time result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the number of microseconds that is the difference between timeValue1 and timeValue2. + An expression that specifies the first time value argument. + An expression that specifies the second time value argument. + + + + Creates a that invokes the canonical 'DiffNanoseconds' function with the specified arguments, which must each have DateTime, DateTimeOffset or Time result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the number of nanoseconds that is the difference between timeValue1 and timeValue2. + An expression that specifies the first time value argument. + An expression that specifies the second time value argument. + + + + Creates a that invokes the canonical 'Round' function with the specified argument, which must each have a single, double or decimal result type. The result type of the expression is the same as the result type of value. + + A new DbFunctionExpression that rounds the specified argument to the nearest integer value. + An expression that specifies the numeric value to round. + + + + Creates a that invokes the canonical 'Round' function with the specified arguments, which must have a single, double or decimal, and integer result types. The result type of the expression is the same as the result type of value. + + A new DbFunctionExpression that rounds the specified argument to the nearest integer value, with precision as specified by digits. + An expression that specifies the numeric value to round. + An expression that specifies the number of digits of precision to use when rounding. + + + + Creates a that invokes the canonical 'Floor' function with the specified argument, which must each have a single, double or decimal result type. The result type of the expression is the same as the result type of value. + + A new DbFunctionExpression that returns the largest integer value not greater than value. + An expression that specifies the numeric value. + + + + Creates a that invokes the canonical 'Ceiling' function with the specified argument, which must each have a single, double or decimal result type. The result type of the expression is the same as the result type of value. + + A new DbFunctionExpression that returns the smallest integer value not less than than value. + An expression that specifies the numeric value. + + + + Creates a that invokes the canonical 'Abs' function with the specified argument, which must each have a numeric result type. The result type of the expression is the same as the result type of value. + + A new DbFunctionExpression that returns the absolute value of value. + An expression that specifies the numeric value. + + + + Creates a that invokes the canonical 'Truncate' function with the specified arguments, which must have a single, double or decimal, and integer result types. The result type of the expression is the same as the result type of value. + + A new DbFunctionExpression that truncates the specified argument to the nearest integer value, with precision as specified by digits. + An expression that specifies the numeric value to truncate. + An expression that specifies the number of digits of precision to use when truncating. + + + + Creates a that invokes the canonical 'Power' function with the specified arguments, which must have numeric result types. The result type of the expression is the same as the result type of baseArgument. + + A new DbFunctionExpression that returns the value of baseArgument raised to the power specified by exponent. + An expression that specifies the numeric value to raise to the given power. + An expression that specifies the power to which baseArgument should be raised. + + + + Creates a that invokes the canonical 'BitwiseAnd' function with the specified arguments, which must have the same integer numeric result type. The result type of the expression is the same as the type of the arguments. + + A new DbFunctionExpression that returns the value produced by performing the bitwise AND of value1 and value2. + An expression that specifies the first operand. + An expression that specifies the second operand. + + + + Creates a that invokes the canonical 'BitwiseOr' function with the specified arguments, which must have the same integer numeric result type. The result type of the expression is the same as the type of the arguments. + + A new DbFunctionExpression that returns the value produced by performing the bitwise OR of value1 and value2. + An expression that specifies the first operand. + An expression that specifies the second operand. + + + + Creates a that invokes the canonical 'BitwiseNot' function with the specified argument, which must have an integer numeric result type. The result type of the expression is the same as the type of the arguments. + + A new DbFunctionExpression that returns the value produced by performing the bitwise NOT of value. + An expression that specifies the first operand. + + + + Creates a that invokes the canonical 'BitwiseXor' function with the specified arguments, which must have the same integer numeric result type. The result type of the expression is the same as the type of the arguments. + + A new DbFunctionExpression that returns the value produced by performing the bitwise XOR (exclusive OR) of value1 and value2. + An expression that specifies the first operand. + An expression that specifies the second operand. + + + + Creates a that invokes the canonical 'NewGuid' function. + + A new DbFunctionExpression that returns a new GUID value. + + + + Provides a constructor-like means of calling + + . + + + + + Initializes a new instance of the class with the specified first column value and optional successive column values. + + A key-value pair that provides the first column in the new row instance. (required) + A key-value pairs that provide any subsequent columns in the new row instance. (optional) + + + + Creates a new that constructs a new row based on the columns contained in this Row instance. + + A new DbNewInstanceExpression that constructs a row with the same column names and DbExpression values as this Row instance. + + + + Converts the given Row instance into an instance of + + The Row instance. + A DbExpression based on the Row instance + + + is null. + + + + + + Provides an API to construct s that invoke spatial realted canonical EDM functions, and, where appropriate, allows that API to be accessed as extension methods on the expression type itself. + + + + + Creates a that invokes the canonical 'GeometryFromText' function with the specified argument, which must have a string result type. The result type of the expression is Edm.Geometry. Its value has the default coordinate system id (SRID) of the underlying provider. + + A new DbFunctionExpression that returns a new geometry value based on the specified value. + An expression that provides the well known text representation of the geometry value. + + + + Creates a that invokes the canonical 'GeometryFromText' function with the specified arguments. wellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry value based on the specified values. + An expression that provides the well known text representation of the geometry value. + An expression that provides the coordinate system id (SRID) of the geometry value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryPointFromText' function with the specified arguments. pointWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry point value based on the specified values. + An expression that provides the well known text representation of the geometry point value. + An expression that provides the coordinate system id (SRID) of the geometry point value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryLineFromText' function with the specified arguments. lineWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry line value based on the specified values. + An expression that provides the well known text representation of the geometry line value. + An expression that provides the coordinate system id (SRID) of the geometry line value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryPolygonFromText' function with the specified arguments. polygonWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry polygon value based on the specified values. + An expression that provides the well known text representation of the geometry polygon value. + An expression that provides the coordinate system id (SRID) of the geometry polygon value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryMultiPointFromText' function with the specified arguments. multiPointWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry multi-point value based on the specified values. + An expression that provides the well known text representation of the geometry multi-point value. + An expression that provides the coordinate system id (SRID) of the geometry multi-point value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryMultiLineFromText' function with the specified arguments. multiLineWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry multi-line value based on the specified values. + An expression that provides the well known text representation of the geometry multi-line value. + An expression that provides the coordinate system id (SRID) of the geometry multi-line value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryMultiPolygonFromText' function with the specified arguments. multiPolygonWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry multi-polygon value based on the specified values. + An expression that provides the well known text representation of the geometry multi-polygon value. + An expression that provides the coordinate system id (SRID) of the geometry multi-polygon value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryCollectionFromText' function with the specified arguments. geometryCollectionWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry collection value based on the specified values. + An expression that provides the well known text representation of the geometry collection value. + An expression that provides the coordinate system id (SRID) of the geometry collection value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryFromBinary' function with the specified argument, which must have a binary result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry value based on the specified binary value. + An expression that provides the well known binary representation of the geometry value. + + + + Creates a that invokes the canonical 'GeometryFromBinary' function with the specified arguments. wellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry value based on the specified values. + An expression that provides the well known binary representation of the geometry value. + An expression that provides the coordinate system id (SRID) of the geometry value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryPointFromBinary' function with the specified arguments. pointWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry point value based on the specified values. + An expression that provides the well known binary representation of the geometry point value. + An expression that provides the coordinate system id (SRID) of the geometry point value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryLineFromBinary' function with the specified arguments. lineWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry line value based on the specified values. + An expression that provides the well known binary representation of the geometry line value. + An expression that provides the coordinate system id (SRID) of the geometry line value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryPolygonFromBinary' function with the specified arguments. polygonWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry polygon value based on the specified values. + An expression that provides the well known binary representation of the geometry polygon value. + An expression that provides the coordinate system id (SRID) of the geometry polygon value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryMultiPointFromBinary' function with the specified arguments. multiPointWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry multi-point value based on the specified values. + An expression that provides the well known binary representation of the geometry multi-point value. + An expression that provides the coordinate system id (SRID) of the geometry multi-point value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryMultiLineFromBinary' function with the specified arguments. multiLineWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry multi-line value based on the specified values. + An expression that provides the well known binary representation of the geometry multi-line value. + An expression that provides the coordinate system id (SRID) of the geometry multi-line value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryMultiPolygonFromBinary' function with the specified arguments. multiPolygonWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry multi-polygon value based on the specified values. + An expression that provides the well known binary representation of the geometry multi-polygon value. + An expression that provides the coordinate system id (SRID) of the geometry multi-polygon value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryCollectionFromBinary' function with the specified arguments. geometryCollectionWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry collection value based on the specified values. + An expression that provides the well known binary representation of the geometry collection value. + An expression that provides the coordinate system id (SRID) of the geometry collection value's coordinate system. + + + + Creates a that invokes the canonical 'GeometryFromGml' function with the specified argument, which must have a string result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry value based on the specified value with the default coordinate system id (SRID) of the underlying provider. + An expression that provides the Geography Markup Language (GML) representation of the geometry value. + + + + Creates a that invokes the canonical 'GeometryFromGml' function with the specified arguments. geometryMarkup must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a new geometry value based on the specified values. + An expression that provides the Geography Markup Language (GML) representation of the geometry value. + An expression that provides the coordinate system id (SRID) of the geometry value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyFromText' function with the specified argument, which must have a string result type. The result type of the expression is Edm.Geography. Its value has the default coordinate system id (SRID) of the underlying provider. + + A new DbFunctionExpression that returns a new geography value based on the specified value. + An expression that provides the well known text representation of the geography value. + + + + Creates a that invokes the canonical 'GeographyFromText' function with the specified arguments. wellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography value based on the specified values. + An expression that provides the well known text representation of the geography value. + An expression that provides the coordinate system id (SRID) of the geography value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyPointFromText' function with the specified arguments. + + The canonical 'GeographyPointFromText' function. + An expression that provides the well-known text representation of the geography point value. + An expression that provides the coordinate system id (SRID) of the geography point value's coordinate systempointWellKnownTextValue. + + + + Creates a that invokes the canonical 'GeographyLineFromText' function with the specified arguments. lineWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography line value based on the specified values. + An expression that provides the well known text representation of the geography line value. + An expression that provides the coordinate system id (SRID) of the geography line value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyPolygonFromText' function with the specified arguments. polygonWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography polygon value based on the specified values. + An expression that provides the well known text representation of the geography polygon value. + An expression that provides the coordinate system id (SRID) of the geography polygon value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyMultiPointFromText' function with the specified arguments. multiPointWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography multi-point value based on the specified values. + An expression that provides the well known text representation of the geography multi-point value. + An expression that provides the coordinate system id (SRID) of the geography multi-point value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyMultiLineFromText' function with the specified arguments. multiLineWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography multi-line value based on the specified values. + An expression that provides the well known text representation of the geography multi-line value. + An expression that provides the coordinate system id (SRID) of the geography multi-line value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyMultiPolygonFromText' function with the specified arguments. multiPolygonWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography multi-polygon value based on the specified values. + An expression that provides the well known text representation of the geography multi-polygon value. + An expression that provides the coordinate system id (SRID) of the geography multi-polygon value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyCollectionFromText' function with the specified arguments. geographyCollectionWellKnownText must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography collection value based on the specified values. + An expression that provides the well known text representation of the geography collection value. + An expression that provides the coordinate system id (SRID) of the geography collection value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyFromBinary' function with the specified argument, which must have a binary result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography value based on the specified binary value. + An expression that provides the well known binary representation of the geography value. + + + + Creates a that invokes the canonical 'GeographyFromBinary' function with the specified arguments. wellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography value based on the specified values. + An expression that provides the well known binary representation of the geography value. + An expression that provides the coordinate system id (SRID) of the geography value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyPointFromBinary' function with the specified arguments. pointWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography point value based on the specified values. + An expression that provides the well known binary representation of the geography point value. + An expression that provides the coordinate system id (SRID) of the geography point value's coordinate systempointWellKnownBinaryValue. + + + + Creates a that invokes the canonical 'GeographyLineFromBinary' function with the specified arguments. lineWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography line value based on the specified values. + An expression that provides the well known binary representation of the geography line value. + An expression that provides the coordinate system id (SRID) of the geography line value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyPolygonFromBinary' function with the specified arguments. polygonWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography polygon value based on the specified values. + An expression that provides the well known binary representation of the geography polygon value. + An expression that provides the coordinate system id (SRID) of the geography polygon value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyMultiPointFromBinary' function with the specified arguments. multiPointWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography multi-point value based on the specified values. + An expression that provides the well known binary representation of the geography multi-point value. + An expression that provides the coordinate system id (SRID) of the geography multi-point value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyMultiLineFromBinary' function with the specified arguments. multiLineWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography multi-line value based on the specified values. + An expression that provides the well known binary representation of the geography multi-line value. + An expression that provides the coordinate system id (SRID) of the geography multi-line value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyMultiPolygonFromBinary' function with the specified arguments. multiPolygonWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography multi-polygon value based on the specified values. + An expression that provides the well known binary representation of the geography multi-polygon value. + An expression that provides the coordinate system id (SRID) of the geography multi-polygon value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyCollectionFromBinary' function with the specified arguments. geographyCollectionWellKnownBinaryValue must have a binary result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography collection value based on the specified values. + An expression that provides the well known binary representation of the geography collection value. + An expression that provides the coordinate system id (SRID) of the geography collection value's coordinate system. + + + + Creates a that invokes the canonical 'GeographyFromGml' function with the specified argument, which must have a string result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography value based on the specified value with the default coordinate system id (SRID) of the underlying provider. + An expression that provides the Geography Markup Language (GML) representation of the geography value. + + + + Creates a that invokes the canonical 'GeographyFromGml' function with the specified arguments. geographyMarkup must have a string result type, while coordinateSystemId must have an integer numeric result type. The result type of the expression is Edm.Geography. + + A new DbFunctionExpression that returns a new geography value based on the specified values. + An expression that provides the Geography Markup Language (GML) representation of the geography value. + An expression that provides the coordinate system id (SRID) of the geography value's coordinate system. + + + + Creates a that invokes the canonical 'CoordinateSystemId' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the integer SRID value from spatialValue. + An expression that specifies the value from which the coordinate system id (SRID) should be retrieved. + + + + Creates a that invokes the canonical 'SpatialTypeName' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.String. + + A new DbFunctionExpression that returns the string Geometry Type name from spatialValue. + An expression that specifies the value from which the Geometry Type name should be retrieved. + + + + Creates a that invokes the canonical 'SpatialDimension' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns the Dimension value from spatialValue. + An expression that specifies the value from which the Dimension value should be retrieved. + + + + Creates a that invokes the canonical 'SpatialEnvelope' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns the the minimum bounding box for geometryValue. + An expression that specifies the value from which the Envelope value should be retrieved. + + + + Creates a that invokes the canonical 'AsBinary' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.Binary. + + A new DbFunctionExpression that returns the well known binary representation of spatialValue. + An expression that specifies the spatial value from which the well known binary representation should be produced. + + + + Creates a that invokes the canonical 'AsGml' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.String. + + A new DbFunctionExpression that returns the Geography Markup Language (GML) representation of spatialValue. + An expression that specifies the spatial value from which the Geography Markup Language (GML) representation should be produced. + + + + Creates a that invokes the canonical 'AsText' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.String. + + A new DbFunctionExpression that returns the well known text representation of spatialValue. + An expression that specifies the spatial value from which the well known text representation should be produced. + + + + Creates a that invokes the canonical 'IsEmptySpatial' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether spatialValue is empty. + An expression that specifies the spatial value from which the IsEmptySptiaal value should be retrieved. + + + + Creates a that invokes the canonical 'IsSimpleGeometry' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether geometryValue is a simple geometry. + The geometry value. + + + + Creates a that invokes the canonical 'SpatialBoundary' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns the the boundary for geometryValue. + An expression that specifies the geometry value from which the SpatialBoundary value should be retrieved. + + + + Creates a that invokes the canonical 'IsValidGeometry' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether geometryValue is valid. + An expression that specifies the geometry value which should be tested for spatial validity. + + + + Creates a that invokes the canonical 'SpatialEquals' function with the specified arguments, which must each have an Edm.Geography or Edm.Geometry result type. The result type of spatialValue1 must match the result type of spatialValue2. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether spatialValue1 and spatialValue2 are equal. + An expression that specifies the first spatial value. + An expression that specifies the spatial value that should be compared with spatialValue1 for equality. + + + + Creates a that invokes the canonical 'SpatialDisjoint' function with the specified arguments, which must each have an Edm.Geography or Edm.Geometry result type. The result type of spatialValue1 must match the result type of spatialValue2. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether spatialValue1 and spatialValue2 are spatially disjoint. + An expression that specifies the first spatial value. + An expression that specifies the spatial value that should be compared with spatialValue1 for disjointness. + + + + Creates a that invokes the canonical 'SpatialIntersects' function with the specified arguments, which must each have an Edm.Geography or Edm.Geometry result type. The result type of spatialValue1 must match the result type of spatialValue2. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether spatialValue1 and spatialValue2 intersect. + An expression that specifies the first spatial value. + An expression that specifies the spatial value that should be compared with spatialValue1 for intersection. + + + + Creates a that invokes the canonical 'SpatialTouches' function with the specified arguments, which must each have an Edm.Geometry result type. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether geometryValue1 touches geometryValue2. + An expression that specifies the first geometry value. + An expression that specifies the geometry value that should be compared with geometryValue1. + + + + Creates a that invokes the canonical 'SpatialCrosses' function with the specified arguments, which must each have an Edm.Geometry result type. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether geometryValue1 crosses geometryValue2 intersect. + An expression that specifies the first geometry value. + An expression that specifies the geometry value that should be compared with geometryValue1. + + + + Creates a that invokes the canonical 'SpatialWithin' function with the specified arguments, which must each have an Edm.Geometry result type. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether geometryValue1 is spatially within geometryValue2. + An expression that specifies the first geometry value. + An expression that specifies the geometry value that should be compared with geometryValue1. + + + + Creates a that invokes the canonical 'SpatialContains' function with the specified arguments, which must each have an Edm.Geometry result type. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether geometryValue1 spatially contains geometryValue2. + An expression that specifies the first geometry value. + An expression that specifies the geometry value that should be compared with geometryValue1. + + + + Creates a that invokes the canonical 'SpatialOverlaps' function with the specified arguments, which must each have an Edm.Geometry result type. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether geometryValue1 spatially overlaps geometryValue2. + An expression that specifies the first geometry value. + An expression that specifies the geometry value that should be compared with geometryValue1. + + + + Creates a that invokes the canonical 'SpatialRelate' function with the specified arguments, which must have Edm.Geometry and string result types. The result type of the expression is Edm.Boolean. + + A new DbFunctionExpression that returns a Boolean value indicating whether geometryValue1 is spatially related to geometryValue2 according to the spatial relationship designated by intersectionPatternMatrix. + An expression that specifies the first geometry value. + An expression that specifies the geometry value that should be compared with geometryValue1. + An expression that specifies the text representation of the Dimensionally Extended Nine-Intersection Model (DE-9IM) intersection pattern used to compare geometryValue1 and geometryValue2. + + + + Creates a that invokes the canonical 'SpatialBuffer' function with the specified arguments, which must have a Edm.Geography or Edm.Geometry and Edm.Double result types. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns a geometry value representing all points less than or equal to distance from spatialValue. + An expression that specifies the spatial value. + An expression that specifies the buffer distance. + + + + Creates a that invokes the canonical 'Distance' function with the specified arguments, which must each have an Edm.Geography or Edm.Geometry result type. The result type of spatialValue1 must match the result type of spatialValue2. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that returns the distance between the closest points in spatialValue1 and spatialValue1. + An expression that specifies the first spatial value. + An expression that specifies the spatial value from which the distance from spatialValue1 should be measured. + + + + Creates a that invokes the canonical 'SpatialConvexHull' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns the the convex hull for geometryValue. + An expression that specifies the geometry value from which the convex hull value should be retrieved. + + + + Creates a that invokes the canonical 'SpatialIntersection' function with the specified arguments, which must each have an Edm.Geography or Edm.Geometry result type. The result type of spatialValue1 must match the result type of spatialValue2. The result type of the expression is the same as the type of spatialValue1 and spatialValue2. + + A new DbFunctionExpression that returns the spatial value representing the intersection of spatialValue1 and spatialValue2. + An expression that specifies the first spatial value. + An expression that specifies the spatial value for which the intersection with spatialValue1 should be computed. + + + + Creates a that invokes the canonical 'SpatialUnion' function with the specified arguments, which must each have an Edm.Geography or Edm.Geometry result type. The result type of spatialValue1 must match the result type of spatialValue2. The result type of the expression is the same as the type of spatialValue1 and spatialValue2. + + A new DbFunctionExpression that returns the spatial value representing the union of spatialValue1 and spatialValue2. + An expression that specifies the first spatial value. + An expression that specifies the spatial value for which the union with spatialValue1 should be computed. + + + + Creates a that invokes the canonical 'SpatialDifference' function with the specified arguments, which must each have an Edm.Geography or Edm.Geometry result type. The result type of spatialValue1 must match the result type of spatialValue2. The result type of the expression is the same as the type of spatialValue1 and spatialValue2. + + A new DbFunctionExpression that returns the geometry value representing the difference of spatialValue2 with spatialValue1. + An expression that specifies the first spatial value. + An expression that specifies the spatial value for which the difference with spatialValue1 should be computed. + + + + Creates a that invokes the canonical 'SpatialSymmetricDifference' function with the specified arguments, which must each have an Edm.Geography or Edm.Geometry result type. The result type of spatialValue1 must match the result type of spatialValue2. The result type of the expression is the same as the type of spatialValue1 and spatialValue2. + + A new DbFunctionExpression that returns the geometry value representing the symmetric difference of spatialValue2 with spatialValue1. + An expression that specifies the first spatial value. + An expression that specifies the spatial value for which the symmetric difference with spatialValue1 should be computed. + + + + Creates a that invokes the canonical 'SpatialElementCount' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns either the number of elements in spatialValue or null if spatialValue is not a collection. + An expression that specifies the geography or geometry collection value from which the number of elements should be retrieved. + + + + Creates a that invokes the canonical 'SpatialElementAt' function with the specified arguments. The first argument must have an Edm.Geography or Edm.Geometry result type. The second argument must have an integer numeric result type. The result type of the expression is the same as that of spatialValue. + + A new DbFunctionExpression that returns either the collection element at position indexValue in spatialValue or null if spatialValue is not a collection. + An expression that specifies the geography or geometry collection value. + An expression that specifies the position of the element to be retrieved from within the geometry or geography collection. + + + + Creates a that invokes the canonical 'XCoordinate' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that returns either the X co-ordinate value of geometryValue or null if geometryValue is not a point. + An expression that specifies the geometry point value from which the X co-ordinate value should be retrieved. + + + + Creates a that invokes the canonical 'YCoordinate' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that returns either the Y co-ordinate value of geometryValue or null if geometryValue is not a point. + An expression that specifies the geometry point value from which the Y co-ordinate value should be retrieved. + + + + Creates a that invokes the canonical 'Elevation' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that returns either the elevation value of spatialValue or null if spatialValue is not a point. + An expression that specifies the spatial point value from which the elevation (Z co-ordinate) value should be retrieved. + + + + Creates a that invokes the canonical 'Measure' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that returns either the Measure of spatialValue or null if spatialValue is not a point. + An expression that specifies the spatial point value from which the Measure (M) co-ordinate value should be retrieved. + + + + Creates a that invokes the canonical 'Latitude' function with the specified argument, which must have an Edm.Geography result type. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that returns either the Latitude value of geographyValue or null if geographyValue is not a point. + An expression that specifies the geography point value from which the Latitude value should be retrieved. + + + + Creates a that invokes the canonical 'Longitude' function with the specified argument, which must have an Edm.Geography result type. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that returns either the Longitude value of geographyValue or null if geographyValue is not a point. + An expression that specifies the geography point value from which the Longitude value should be retrieved. + + + + Creates a that invokes the canonical 'SpatialLength' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that returns either the length of spatialValue or null if spatialValue is not a curve. + An expression that specifies the spatial curve value from which the length should be retrieved. + + + + Creates a that invokes the canonical 'StartPoint' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type is the same as that of spatialValue. + + A new DbFunctionExpression that returns either the start point of spatialValue or null if spatialValue is not a curve. + An expression that specifies the spatial curve value from which the start point should be retrieved. + + + + Creates a that invokes the canonical 'EndPoint' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type is the same as that of spatialValue. + + A new DbFunctionExpression that returns either the end point of spatialValue or null if spatialValue is not a curve. + An expression that specifies the spatial curve value from which the end point should be retrieved. + + + + Creates a that invokes the canonical 'IsClosedSpatial' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type is Edm.Boolean. + + A new DbFunctionExpression that returns either a Boolean value indicating whether spatialValue is closed, or null if spatialValue is not a curve. + An expression that specifies the spatial curve value from which the IsClosedSpatial value should be retrieved. + + + + Creates a that invokes the canonical 'IsRing' function with the specified argument, which must have an Edm.Geometry result type. The result type is Edm.Boolean. + + A new DbFunctionExpression that returns either a Boolean value indicating whether geometryValue is a ring (both closed and simple), or null if geometryValue is not a curve. + An expression that specifies the geometry curve value from which the IsRing value should be retrieved. + + + + Creates a that invokes the canonical 'PointCount' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns either the number of points in spatialValue or null if spatialValue is not a line string. + An expression that specifies the spatial line string value from which the number of points should be retrieved. + + + + Creates a that invokes the canonical 'PointAt' function with the specified arguments. The first argument must have an Edm.Geography or Edm.Geometry result type. The second argument must have an integer numeric result type. The result type of the expression is the same as that of spatialValue. + + A new DbFunctionExpression that returns either the point at position indexValue in spatialValue or null if spatialValue is not a line string. + An expression that specifies the spatial line string value. + An expression that specifies the position of the point to be retrieved from within the line string. + + + + Creates a that invokes the canonical 'Area' function with the specified argument, which must have an Edm.Geography or Edm.Geometry result type. The result type of the expression is Edm.Double. + + A new DbFunctionExpression that returns either the area of spatialValue or null if spatialValue is not a surface. + An expression that specifies the spatial surface value for which the area should be calculated. + + + + Creates a that invokes the canonical 'Centroid' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns either the centroid point of geometryValue (which may not be on the surface itself) or null if geometryValue is not a surface. + An expression that specifies the geometry surface value from which the centroid should be retrieved. + + + + Creates a that invokes the canonical 'PointOnSurface' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns either a point guaranteed to be on the surface geometryValue or null if geometryValue is not a surface. + An expression that specifies the geometry surface value from which the point should be retrieved. + + + + Creates a that invokes the canonical 'ExteriorRing' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns either the exterior ring of the polygon geometryValue or null if geometryValue is not a polygon. + The geometry value. + + + + Creates a that invokes the canonical 'InteriorRingCount' function with the specified argument, which must have an Edm.Geometry result type. The result type of the expression is Edm.Int32. + + A new DbFunctionExpression that returns either the number of interior rings in the polygon geometryValue or null if geometryValue is not a polygon. + The geometry value. + + + + Creates a that invokes the canonical 'InteriorRingAt' function with the specified arguments. The first argument must have an Edm.Geometry result type. The second argument must have an integer numeric result types. The result type of the expression is Edm.Geometry. + + A new DbFunctionExpression that returns either the interior ring at position indexValue in geometryValue or null if geometryValue is not a polygon. + The geometry value. + An expression that specifies the position of the interior ring to be retrieved from within the polygon. + + + + Ensures that all metadata in a given expression tree is from the specified metadata workspace, + potentially rebinding and rebuilding the expressions to appropriate replacement metadata where necessary. + + + + Initializes a new instance of the class. + The target workspace. + + + Implements the visitor pattern for the entity set. + The implemented visitor pattern. + The entity set. + + + Implements the visitor pattern for the function. + The implemented visitor pattern. + The function metadata. + + + Implements the visitor pattern for the type. + The implemented visitor pattern. + The type. + + + Implements the visitor pattern for the type usage. + The implemented visitor pattern. + The type. + + + Implements the visitor pattern for retrieving an instance property. + The implemented visitor. + The expression. + + + + Represents a boolean expression that tests whether a specified item matches any element in a list. + + + + + The visitor pattern method for expression visitors that do not produce a result value. + + An instance of DbExpressionVisitor. + + + is null + + + + + The visitor pattern method for expression visitors that produce a result value of a specific type. + + An instance of a typed DbExpressionVisitor that produces a result value of type TResultType. + + The type of the result produced by + + + + is null + + + An instance of . + + + + + Gets a DbExpression that specifies the item to be matched. + + + + + Gets the list of DbExpression to test for a match. + + + + + Represents the retrieval of the key value of the specified Reference as a row. + + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + + Represents the set union (without duplicate removal) operation between the left and right operands. + + + DbUnionAllExpression requires that its arguments have a common collection result type + + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + + Represents a 'scan' of all elements of a given entity set. + + + + Implements the visitor pattern for expressions that do not produce a result value. + + An instance of . + + visitor is null. + + + Implements the visitor pattern for expressions that produce a result value of a specific type. + + A result value of a specific type produced by + + . + + + An instance of a typed that produces a result value of a specific type. + + The type of the result produced by visitor . + visitor is null. + + + Gets the metadata for the referenced entity or relationship set. + The metadata for the referenced entity or relationship set. + + + + Extension methods for . + + + + + Gets the conceptual model from the specified DbModel. + + An instance of a class that implements IEdmModelAdapter (ex. DbModel). + An instance of EdmModel that represents the conceptual model. + + + + Gets the store model from the specified DbModel. + + An instance of a class that implements IEdmModelAdapter (ex. DbModel). + An instance of EdmModel that represents the store model. + + + + An interface to get the underlying store and conceptual model for a . + + + + + Gets the conceptual model. + + + + + Gets the store model. + + + + + Inherit from this class to create a service that allows for code generation of custom annotations as part of + scaffolding Migrations. The derived class should be set onto the . + + + Note that an is not needed if the annotation uses a simple string value, + or if calling ToString on the annotation object is sufficient for use in the scaffolded Migration. + + + + + Override this method to return additional namespaces that should be included in the code generated for the + scaffolded migration. The default implementation returns an empty enumeration. + + The names of the annotations that are being included in the generated code. + A list of additional namespaces to include. + + + + Implement this method to generate code for the given annotation value. + + The name of the annotation for which a value is being generated. + The annotation value. + The writer to which generated code should be written. + + + + Represents a pair of annotation values in a scaffolded or hand-coded . + + + Code First allows for custom annotations to be associated with columns and tables in the + generated model. This class represents a pair of annotation values in a migration such + that when the Code First model changes the old annotation value and the new annotation + value can be provided to the migration and used in SQL generation. + + + + + Creates a new pair of annotation values. + + The old value of the annotation, which may be null if the annotation has just been created. + The new value of the annotation, which may be null if the annotation has been deleted. + + + + + + + + + + Returns true if both annotation pairs contain the same values, otherwise false. + + A pair of annotation values. + A pair of annotation values. + True if both pairs contain the same values. + + + + Returns true if the two annotation pairs contain different values, otherwise false. + + A pair of annotation values. + A pair of annotation values. + True if the pairs contain different values. + + + + Gets the old value of the annotation, which may be null if the annotation has just been created. + + + + + Gets the new value of the annotation, which may be null if the annotation has been deleted. + + + + + Returned by and related methods to indicate whether or + not one object does not conflict with another such that the two can be combined into one. + + + If the two objects are not compatible then information about why they are not compatible is contained + in the property. + + + + + Creates a new instance. + + Indicates whether or not the two tested objects are compatible. + + An error message indicating how the objects are not compatible. Expected to be null if isCompatible is true. + + + + + Implicit conversion to a bool to allow the result object to be used directly in checks. + + The object to convert. + True if the result is compatible; false otherwise. + + + + True if the two tested objects are compatible; otherwise false. + + + + + If is true, then returns an error message indicating how the two tested objects + are incompatible. + + + + + Types used as custom annotations can implement this interface to indicate that an attempt to use + multiple annotations with the same name on a given table or column may be possible by merging + the multiple annotations into one. + + + Normally there can only be one custom annotation with a given name on a given table or + column. If a table or column ends up with multiple annotations, for example, because + multiple CLR properties map to the same column, then an exception will be thrown. + However, if the annotation type implements this interface, then the two annotations will be + checked for compatibility using the method and, if compatible, + will be merged into one using the method. + + + + + Returns true if this annotation does not conflict with the given annotation such that + the two can be combined together using the method. + + The annotation to compare. + A CompatibilityResult indicating whether or not this annotation is compatible with the other. + + + + Merges this annotation with the given annotation and returns a new merged annotation. This method is + only expected to succeed if returns true. + + The annotation to merge with this one. + A new merged annotation. + + + + Instances of this class are used as custom annotations for representing database indexes in an + Entity Framework model. + + + An index annotation is added to a Code First model when an is placed on + a mapped property of that model. This is used by Entity Framework Migrations to create indexes on + mapped database columns. Note that multiple index attributes on a property will be merged into a + single annotation for the column. Similarly, index attributes on multiple properties that map to the + same column will be merged into a single annotation for the column. This means that one index + annotation can represent multiple indexes. Within an annotation there can be only one index with any + given name. + + + + + The name used when this annotation is stored in Entity Framework metadata or serialized into + an SSDL/EDMX file. + + + + + Creates a new annotation for the given index. + + An index attributes representing an index. + + + + Creates a new annotation for the given collection of indexes. + + Index attributes representing one or more indexes. + + + + Returns true if this annotation does not conflict with the given annotation such that + the two can be combined together using the method. + + + Each index annotation contains at most one with a given name. + Two annotations are considered compatible if each IndexAttribute with a given name is only + contained in one annotation or the other, or if both annotations contain an IndexAttribute + with the given name. + + The annotation to compare. + A CompatibilityResult indicating whether or not this annotation is compatible with the other. + + + + Merges this annotation with the given annotation and returns a new annotation containing the merged indexes. + + + Each index annotation contains at most one with a given name. + The merged annotation will contain IndexAttributes from both this and the other annotation. + If both annotations contain an IndexAttribute with the same name, then the merged annotation + will contain one IndexAttribute with that name. + + The annotation to merge with this one. + A new annotation with indexes from both annotations merged. + + The other annotation contains indexes that are not compatible with indexes in this annotation. + + + + + + + + Gets the indexes represented by this annotation. + + + + + This class is used to serialize and deserialize objects so that they + can be stored in the EDMX form of the Entity Framework model. + + + An example of the serialized format is: + { Name: 'MyIndex', Order: 7, IsClustered: True, IsUnique: False } { } { Name: 'MyOtherIndex' }. + Note that properties that have not been explicitly set in an index attribute will be excluded from + the serialized output. So, in the example above, the first index has all properties specified, + the second has none, and the third has just the name set. + + + + + Implement this interface to allow custom annotations represented by instances to be + serialized to and from the EDMX XML. Usually a serializer instance is set using the + method. + + + + + Serializes the given annotation value into a string for storage in the EDMX XML. + + The name of the annotation that is being serialized. + The value to serialize. + The serialized value. + + + + Deserializes the given string back into the expected annotation value. + + The name of the annotation that is being deserialized. + The string to deserialize. + The deserialized annotation value. + + + + Serializes the given into a string for storage in the EDMX XML. + + The name of the annotation that is being serialized. + The value to serialize which must be an IndexAnnotation object. + The serialized value. + + + + Deserializes the given string back into an object. + + The name of the annotation that is being deserialized. + The string to deserialize. + The deserialized annotation value. + If there is an error reading the serialized value. + + + + This interface is implemented by any object that can resolve a dependency, either directly + or through use of an external container. + + + The public services currently resolved using IDbDependencyResolver are documented here: + http://msdn.microsoft.com/en-us/data/jj680697 + + + + + Attempts to resolve a dependency for a given contract type and optionally a given key. + If the resolver cannot resolve the dependency then it must return null and not throw. This + allows resolvers to be used in a Chain of Responsibility pattern such that multiple resolvers + can be asked to resolve a dependency until one finally does. + + The interface or abstract base class that defines the dependency to be resolved. The returned object is expected to be an instance of this type. + Optionally, the key of the dependency to be resolved. This may be null for dependencies that are not differentiated by key. + The resolved dependency, which must be an instance of the given contract type, or null if the dependency could not be resolved. + + + + Attempts to resolve a dependencies for a given contract type and optionally a given key. + If the resolver cannot resolve the dependency then it must return an empty enumeration and + not throw. This method differs from in that it returns all registered + services for the given type and key combination. + + The interface or abstract base class that defines the dependency to be resolved. Every returned object is expected to be an instance of this type. + Optionally, the key of the dependency to be resolved. This may be null for dependencies that are not differentiated by key. + All services that resolve the dependency, which must be instances of the given contract type, or an empty enumeration if the dependency could not be resolved. + + + + An implementation used for resolving + factories. + + + + + Initializes a new instance of + + A function that returns a new instance of a transaction handler. + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which the transaction handler will be used. + null will match anything. + + + A string that will be matched against the server name in the connection string. null will match anything. + + + + + If the given type is , then this method will attempt + to return the service to use, otherwise it will return null. When the given type is + , then the key is expected to be a . + + The service type to resolve. + A key used to make a determination of the service to return. + + An , or null. + + + + + If the given type is , then this resolver will attempt + to return the service to use, otherwise it will return an empty enumeration. When the given type is + , then the key is expected to be an . + + The service type to resolve. + A key used to make a determination of the service to return. + + An enumerable of , or an empty enumeration. + + + + + + + + + + + Provides utility methods for reading from an App.config or Web.config file. + + + + + Initializes a new instance of . + + The configuration to read from. + + + + Gets the specified provider services from the configuration. + + The invariant name of the provider services. + The provider services type name, or null if not found. + + + + A simple logger for logging SQL and other database operations to the console or a file. + A logger can be registered in code or in the application's web.config /app.config file. + + + + + An object that implements this interface can be registered with to + receive notifications when Entity Framework loads the application's . + + + Interceptors can also be registered in the config file of the application. + See http://go.microsoft.com/fwlink/?LinkId=260883 for more information about Entity Framework configuration. + + + + + This is the base interface for all interfaces that provide interception points for various + different types and operations. For example, see . + Interceptors are registered on the class. + + + + + Occurs during EF initialization after the has been constructed but just before + it is locked ready for use. Use this event to inspect and/or override services that have been + registered before the configuration is locked. Note that an interceptor of this type should be used carefully + since it may prevent tooling from discovering the same configuration that is used at runtime. + + + Handlers can only be added before EF starts to use the configuration and so handlers should + generally be added as part of application initialization. Do not access the DbConfiguration + static methods inside the handler; instead use the the members of + to get current services and/or add overrides. + + Arguments to the event that this interceptor mirrors. + Contextual information about the event. + + + + Creates a new logger that will send log output to the console. + + + + + Creates a new logger that will send log output to a file. If the file already exists then + it is overwritten. + + A path to the file to which log output will be written. + + + + Creates a new logger that will send log output to a file. + + A path to the file to which log output will be written. + True to append data to the file if it exists; false to overwrite the file. + + + + Stops logging and closes the underlying file if output is being written to a file. + + + + + Stops logging and closes the underlying file if output is being written to a file. + + + True to release both managed and unmanaged resources; False to release only unmanaged resources. + + + + + Starts logging. This method is a no-op if logging is already started. + + + + + Stops logging. This method is a no-op if logging is not started. + + + + + Called to start logging during Entity Framework initialization when this logger is registered. + as an . + + Arguments to the event that this interceptor mirrors. + Contextual information about the event. + + + + Represents contextual information associated with calls into + implementations. + + + Instances of this class are publicly immutable for contextual information. To add + contextual information use one of the With... or As... methods to create a new + interception context containing the new information. + + + + + Represents contextual information associated with calls into + implementations. + + + Note that specific types/operations that can be intercepted may use a more specific + interception context derived from this class. For example, if SQL is being executed by + a , then the DbContext will be contained in the + instance that is passed to the methods + of . + Instances of this class are publicly immutable for contextual information. To add + contextual information use one of the With... or As... methods to create a new + interception context containing the new information. + + + + + Constructs a new with no state. + + + + + Creates a new by copying state from the given + interception context. See + + The context from which to copy state. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context the flag set to true. + + A new interception context associated with the async flag set. + + + + Call this method when creating a copy of an interception context in order to add new state + to it. Using this method instead of calling the constructor directly ensures virtual dispatch + so that the new type will have the same type (and any specialized state) as the context that + is being cloned. + + A new context with all state copied. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Gets all the instances associated with this interception context. + + + This list usually contains zero or one items. However, it can contain more than one item if + a single has been used to construct multiple + instances. + + + + + Gets all the instances associated with this interception context. + + + This list usually contains zero or one items. However, it can contain more than one item when + EF has created a new for use in database creation and initialization, or + if a single is used with multiple . + + + + + True if the operation is being executed asynchronously, otherwise false. + + + + + Constructs a new with no state. + + + + + Creates a new by copying state from the given + interception context. Also see + + The context from which to copy state. + + + + + + + Creates a new that contains all the contextual information in + this interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in + this interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in + this interception context the flag set to true. + + A new interception context associated with the async flag set. + + + + + + + + + + + + + + + + Implemented by Entity Framework providers and used to check whether or not tables exist + in a given database. This is used by database initializers when determining whether or not to + treat an existing database as empty such that tables should be created. + + + + + When overridden in a derived class checks where the given tables exist in the database + for the given connection. + + + The context for which table checking is being performed, usually used to obtain an appropriate + . + + + A connection to the database. May be open or closed; should be closed again if opened. Do not + dispose. + + The tables to check for existence. + The name of the EdmMetadata table to check for existence. + True if any of the model tables or EdmMetadata table exists. + + + + Helper method to get the table name for the given s-space . + + The s-space entity set for the table. + The table name. + + + + Thrown when an error occurs committing a . + + + + + Initializes a new instance of + + + + + Initializes a new instance of + + The exception message. + + + + Initializes a new instance of + + The exception message. + The inner exception. + + + + Initializes a new instance of the class. + + The data necessary to serialize or deserialize an object. + Description of the source and destination of the specified serialized stream. + + + + Event arguments passed to event handlers. + + + + + Call this method to add a instance to the Chain of + Responsibility of resolvers that are used to resolve dependencies needed by the Entity Framework. + + + Resolvers are asked to resolve dependencies in reverse order from which they are added. This means + that a resolver can be added to override resolution of a dependency that would already have been + resolved in a different way. + The only exception to this is that any dependency registered in the application's config file + will always be used in preference to using a dependency resolver added here, unless the + overrideConfigFile is set to true in which case the resolver added here will also override config + file settings. + + The resolver to add. + If true, then the resolver added will take precedence over settings in the config file. + + + + Call this method to add a instance to the Chain of Responsibility + of resolvers that are used to resolve dependencies needed by the Entity Framework. Unlike the AddDependencyResolver + method, this method puts the resolver at the bottom of the Chain of Responsibility such that it will only + be used to resolve a dependency that could not be resolved by any of the other resolvers. + + The resolver to add. + + + + Adds a wrapping resolver to the configuration that is about to be locked. A wrapping + resolver is a resolver that incepts a service would have been returned by the resolver + chain and wraps or replaces it with another service of the same type. + + The type of service to wrap or replace. + A delegate that takes the unwrapped service and key and returns the wrapped or replaced service. + + + + + + + + + + + + + + + + Returns a snapshot of the that is about to be locked. + Use the GetService methods on this object to get services that have been registered. + + + + + An implementation used for resolving + factories. + + + This class can be used by to aid in the resolving + of factories as a default service for the provider. + + The type of execution strategy that is resolved. + + + + Initializes a new instance of + + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this execution strategy will be used. + + + A string that will be matched against the server name in the connection string. null will match anything. + + A function that returns a new instance of an execution strategy. + + + + If the given type is , then this resolver will attempt + to return the service to use, otherwise it will return null. When the given type is + Func{IExecutionStrategy}, then the key is expected to be an . + + The service type to resolve. + A key used to make a determination of the service to return. + + An , or null. + + + + + If the given type is , then this resolver will attempt + to return the service to use, otherwise it will return an empty enumeration. When the given type is + Func{IExecutionStrategy}, then the key is expected to be an . + + The service type to resolve. + A key used to make a determination of the service to return. + + An enumerable of , or an empty enumeration. + + + + + Extension methods to call the method using + a generic type parameter and/or no name. + + + + + Calls passing the generic type of the method and the given + name as arguments. + + The contract type to resolve. + The resolver to use. + The key of the dependency to resolve. + The resolved dependency, or null if the resolver could not resolve it. + + + + Calls passing the generic type of the method as + the type argument and null for the name argument. + + The contract type to resolve. + The resolver to use. + The resolved dependency, or null if the resolver could not resolve it. + + + + Calls passing the given type argument and using + null for the name argument. + + The resolver to use. + The contract type to resolve. + The resolved dependency, or null if the resolver could not resolve it. + + + + Calls passing the generic type of the method and the given + name as arguments. + + The contract type to resolve. + The resolver to use. + The key of the dependency to resolve. + All resolved dependencies, or an if no services are resolved. + + + + Calls passing the generic type of the method as + the type argument and null for the name argument. + + The contract type to resolve. + The resolver to use. + All resolved dependencies, or an if no services are resolved. + + + + Calls passing the given type argument and using + null for the name argument. + + The resolver to use. + The contract type to resolve. + All resolved dependencies, or an if no services are resolved. + + + + Implements to resolve a dependency such that it always returns + the same instance. + + The type that defines the contract for the dependency that will be resolved. + + This class is immutable such that instances can be accessed by multiple threads at the same time. + + + + + Constructs a new resolver that will return the given instance for the contract type + regardless of the key passed to the Get method. + + The instance to return. + + + + Constructs a new resolver that will return the given instance for the contract type + if the given key matches exactly the key passed to the Get method. + + The instance to return. + Optionally, the key of the dependency to be resolved. This may be null for dependencies that are not differentiated by key. + + + + Constructs a new resolver that will return the given instance for the contract type + if the given key matches the key passed to the Get method based on the given predicate. + + The instance to return. + A predicate that takes the key object and returns true if and only if it matches. + + + + + + + + + + Represents contextual information associated with calls to + implementations. + + + Instances of this class are publicly immutable for contextual information. To add + contextual information use one of the With... or As... methods to create a new + interception context containing the new information. + + + + + Represents contextual information associated with calls to with return type . + + The return type of the target method. + + + + Represents contextual information associated with calls with return type . + + The return type of the target method. + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Prevents the operation from being executed if called before the operation has executed. + + + Thrown if this method is called after the operation has already executed. + + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + If execution of the operation completes without throwing, then this property will contain + the result of the operation. If the operation was suppressed or did not fail, then this property + will always contain the default value for the generic type. + + + When an operation operation completes without throwing both this property and the + property are set. However, the property can be set or changed by interceptors, + while this property will always represent the actual result returned by the operation, if any. + + + + + If this property is set before the operation has executed, then execution of the operation will + be suppressed and the set result will be returned instead. Otherwise, if the operation succeeds, then + this property will be set to the returned result. In either case, interceptors that run + after the operation can change this property to change the result that will be returned. + + + When an operation operation completes without throwing both this property and the + property are set. However, this property can be set or changed by interceptors, while the + property will always represent the actual result returned by the + operation, if any. + + + + + When true, this flag indicates that that execution of the operation has been suppressed by + one of the interceptors. This can be done before the operation has executed by calling + , by setting an to be thrown, or + by setting the operation result using . + + + + + Gets or sets a value containing arbitrary user-specified state information associated with the operation. + + + + + If execution of the operation fails, then this property will contain the exception that was + thrown. If the operation was suppressed or did not fail, then this property will always be null. + + + When an operation fails both this property and the property are set + to the exception that was thrown. However, the property can be set or + changed by interceptors, while this property will always represent the original exception thrown. + + + + + If this property is set before the operation has executed, then execution of the operation will + be suppressed and the set exception will be thrown instead. Otherwise, if the operation fails, then + this property will be set to the exception that was thrown. In either case, interceptors that run + after the operation can change this property to change the exception that will be thrown, or set this + property to null to cause no exception to be thrown at all. + + + When an operation fails both this property and the property are set + to the exception that was thrown. However, the this property can be set or changed by + interceptors, while the property will always represent + the original exception thrown. + + + + + Set to the status of the after an async operation has finished. Not used for + synchronous operations. + + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context together with the given . + + The isolation level to associate. + A new interception context associated with the given isolation level. + + + + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + The that will be used or has been used to start a transaction. + + + + + This is the default log formatter used when some is set onto the + property. A different formatter can be used by creating a class that inherits from this class and overrides + some or all methods to change behavior. + + + To set the new formatter create a code-based configuration for EF using and then + set the formatter class to use with . + Note that setting the type of formatter to use with this method does change the way command are + logged when is used. It is still necessary to set a + onto before any commands will be logged. + For more low-level control over logging/interception see and + . + Interceptors can also be registered in the config file of the application. + See http://go.microsoft.com/fwlink/?LinkId=260883 for more information about Entity Framework configuration. + + + + + An object that implements this interface can be registered with to + receive notifications when Entity Framework executes commands. + + + Interceptors can also be registered in the config file of the application. + See http://go.microsoft.com/fwlink/?LinkId=260883 for more information about Entity Framework configuration. + + + + + This method is called before a call to or + one of its async counterparts is made. + + The command being executed. + Contextual information associated with the call. + + + + This method is called after a call to or + one of its async counterparts is made. The result used by Entity Framework can be changed by setting + . + + + For async operations this method is not called until after the async task has completed + or failed. + + The command being executed. + Contextual information associated with the call. + + + + This method is called before a call to or + one of its async counterparts is made. + + The command being executed. + Contextual information associated with the call. + + + + This method is called after a call to or + one of its async counterparts is made. The result used by Entity Framework can be changed by setting + . + + + For async operations this method is not called until after the async task has completed + or failed. + + The command being executed. + Contextual information associated with the call. + + + + This method is called before a call to or + one of its async counterparts is made. + + The command being executed. + Contextual information associated with the call. + + + + This method is called after a call to or + one of its async counterparts is made. The result used by Entity Framework can be changed by setting + . + + + For async operations this method is not called until after the async task has completed + or failed. + + The command being executed. + Contextual information associated with the call. + + + + An object that implements this interface can be registered with to + receive notifications when Entity Framework performs operations on a . + + + Interceptors can also be registered in the config file of the application. + See http://go.microsoft.com/fwlink/?LinkId=260883 for more information about Entity Framework configuration. + + + + + Called before is invoked. + + The connection beginning the transaction. + Contextual information associated with the call. + + + + Called after is invoked. + The transaction used by Entity Framework can be changed by setting + . + + The connection that began the transaction. + Contextual information associated with the call. + + + + Called before is invoked. + + The connection being closed. + Contextual information associated with the call. + + + + Called after is invoked. + + The connection that was closed. + Contextual information associated with the call. + + + + Called before is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called after is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called before is set. + + The connection. + Contextual information associated with the call. + + + + Called after is set. + + The connection. + Contextual information associated with the call. + + + + Called before is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called after is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called before is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called after is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called before is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called after is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called before is invoked. + + The connection being disposed. + Contextual information associated with the call. + + + + Called after is invoked. + + The connection that was disposed. + Contextual information associated with the call. + + + + Called before is invoked. + + The connection. + Contextual information associated with the call. + + + + Called after is invoked. + + The connection. + Contextual information associated with the call. + + + + Called before or its async counterpart is invoked. + + The connection being opened. + Contextual information associated with the call. + + + + Called after or its async counterpart is invoked. + + The connection that was opened. + Contextual information associated with the call. + + + + Called before is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called after is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called before is retrieved. + + The connection. + Contextual information associated with the call. + + + + Called after is retrieved. + + The connection. + Contextual information associated with the call. + + + + An object that implements this interface can be registered with to + receive notifications when Entity Framework commits or rollbacks a transaction. + + + Interceptors can also be registered in the config file of the application. + See http://go.microsoft.com/fwlink/?LinkId=260883 for more information about Entity Framework configuration. + + + + + Called before is retrieved. + + The transaction. + Contextual information associated with the call. + + + + Called after is retrieved. + + The transaction. + Contextual information associated with the call. + + + + Called before is retrieved. + + The transaction. + Contextual information associated with the call. + + + + Called after is retrieved. + + The transaction. + Contextual information associated with the call. + + + + This method is called before is invoked. + + The transaction being commited. + Contextual information associated with the call. + + + + This method is called after is invoked. + + The transaction that was commited. + Contextual information associated with the call. + + + + This method is called before is invoked. + + The transaction being disposed. + Contextual information associated with the call. + + + + This method is called after is invoked. + + The transaction that was disposed. + Contextual information associated with the call. + + + + This method is called before is invoked. + + The transaction being rolled back. + Contextual information associated with the call. + + + + This method is called after is invoked. + + The transaction that was rolled back. + Contextual information associated with the call. + + + + Creates a formatter that will not filter by any and will instead log every command + from any context and also commands that do not originate from a context. + + + This constructor is not used when a delegate is set on . Instead it can be + used by setting the formatter directly using . + + The delegate to which output will be sent. + + + + Creates a formatter that will only log commands the come from the given instance. + + + This constructor must be called by a class that inherits from this class to override the behavior + of . + + + The context for which commands should be logged. Pass null to log every command + from any context and also commands that do not originate from a context. + + The delegate to which output will be sent. + + + + Writes the given string to the underlying write delegate. + + The string to write. + + + + This method is called before a call to or + one of its async counterparts is made. + The default implementation calls and starts . + + The command being executed. + Contextual information associated with the call. + + + + This method is called after a call to or + one of its async counterparts is made. + The default implementation stops and calls . + + The command being executed. + Contextual information associated with the call. + + + + This method is called before a call to or + one of its async counterparts is made. + The default implementation calls and starts . + + The command being executed. + Contextual information associated with the call. + + + + This method is called after a call to or + one of its async counterparts is made. + The default implementation stops and calls . + + The command being executed. + Contextual information associated with the call. + + + + This method is called before a call to or + one of its async counterparts is made. + The default implementation calls and starts . + + The command being executed. + Contextual information associated with the call. + + + + This method is called after a call to or + one of its async counterparts is made. + The default implementation stops and calls . + + The command being executed. + Contextual information associated with the call. + + + + Called whenever a command is about to be executed. The default implementation of this method + filters by set into , if any, and then calls + . This method would typically only be overridden to change the + context filtering behavior. + + The type of the operation's results. + The command that will be executed. + Contextual information associated with the command. + + + + Called whenever a command has completed executing. The default implementation of this method + filters by set into , if any, and then calls + . This method would typically only be overridden to change the context + filtering behavior. + + The type of the operation's results. + The command that was executed. + Contextual information associated with the command. + + + + Called to log a command that is about to be executed. Override this method to change how the + command is logged to . + + The type of the operation's results. + The command to be logged. + Contextual information associated with the command. + + + + Called by to log each parameter. This method can be called from an overridden + implementation of to log parameters, and/or can be overridden to + change the way that parameters are logged to . + + The type of the operation's results. + The command being logged. + Contextual information associated with the command. + The parameter to log. + + + + Called to log the result of executing a command. Override this method to change how results are + logged to . + + The type of the operation's results. + The command being logged. + Contextual information associated with the command. + + + + Does not write to log unless overridden. + + The connection beginning the transaction. + Contextual information associated with the call. + + + + Called after is invoked. + The default implementation of this method filters by set into + , if any, and then logs the event. + + The connection that began the transaction. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection being opened. + Contextual information associated with the call. + + + + Called after or its async counterpart is invoked. + The default implementation of this method filters by set into + , if any, and then logs the event. + + The connection that was opened. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection being closed. + Contextual information associated with the call. + + + + Called after is invoked. + The default implementation of this method filters by set into + , if any, and then logs the event. + + The connection that was closed. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Called before is invoked. + The default implementation of this method filters by set into + , if any, and then logs the event. + + The connection being disposed. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection that was disposed. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The connection. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The transaction. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The transaction. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + The transaction. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The transaction. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The transaction being commited. + Contextual information associated with the call. + + + + This method is called after is invoked. + The default implementation of this method filters by set into + , if any, and then logs the event. + + The transaction that was commited. + Contextual information associated with the call. + + + + This method is called before is invoked. + The default implementation of this method filters by set into + , if any, and then logs the event. + + The transaction being disposed. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The transaction that was disposed. + Contextual information associated with the call. + + + + Does not write to log unless overridden. + + The transaction being rolled back. + Contextual information associated with the call. + + + + This method is called after is invoked. + The default implementation of this method filters by set into + , if any, and then logs the event. + + The transaction that was rolled back. + Contextual information associated with the call. + + + + + + + + + + + + + + + + The context for which commands are being logged, or null if commands from all contexts are + being logged. + + + + + The stop watch used to time executions. This stop watch is started at the end of + , , and + methods and is stopped at the beginning of the , , + and methods. If these methods are overridden and the stop watch is being used + then the overrides should either call the base method or start/stop the watch themselves. + + + + + Represents contextual information associated with calls to that don't return any results. + + + + + Represents contextual information associated with calls that don't return any results. + + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Prevents the operation from being executed if called before the operation has executed. + + + Thrown if this method is called after the operation has already executed. + + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + When true, this flag indicates that that execution of the operation has been suppressed by + one of the interceptors. This can be done before the operation has executed by calling + or by setting an to be thrown + + + + + If execution of the operation fails, then this property will contain the exception that was + thrown. If the operation was suppressed or did not fail, then this property will always be null. + + + When an operation fails both this property and the property are set + to the exception that was thrown. However, the property can be set or + changed by interceptors, while this property will always represent the original exception thrown. + + + + + If this property is set before the operation has executed, then execution of the operation will + be suppressed and the set exception will be thrown instead. Otherwise, if the operation fails, then + this property will be set to the exception that was thrown. In either case, interceptors that run + after the operation can change this property to change the exception that will be thrown, or set this + property to null to cause no exception to be thrown at all. + + + When an operation fails both this property and the property are set + to the exception that was thrown. However, the this property can be set or changed by + interceptors, while the property will always represent + the original exception thrown. + + + + + Set to the status of the after an async operation has finished. Not used for + synchronous operations. + + + + + Gets or sets a value containing arbitrary user-specified state information associated with the operation. + + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + + + + Represents contextual information associated with calls to property setters of type on a . + + The type of the target property. + + + + Represents contextual information associated with calls to property setters of type . + + + An instance of this class is passed to the dispatch methods and does not contain mutable information such as + the result of the operation. This mutable information is obtained from the + that is passed to the interceptors. Instances of this class are publicly immutable. To add contextual information + use one of the With... or As... methods to create a new interception context containing the new information. + + The type of the target property. + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Creates a new that contains all the contextual information in this + interception context together with the given property value. + + The value that will be assigned to the target property. + A new interception context associated with the given property value. + + + + + + + Prevents the operation from being executed if called before the operation has executed. + + + Thrown if this method is called after the operation has already executed. + + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + The value that will be assigned to the target property. + + + + + Gets or sets a value containing arbitrary user-specified state information associated with the operation. + + + + + When true, this flag indicates that that execution of the operation has been suppressed by + one of the interceptors. This can be done before the operation has executed by calling + or by setting an to be thrown + + + + + If execution of the operation fails, then this property will contain the exception that was + thrown. If the operation was suppressed or did not fail, then this property will always be null. + + + When an operation fails both this property and the property are set + to the exception that was thrown. However, the property can be set or + changed by interceptors, while this property will always represent the original exception thrown. + + + + + If this property is set before the operation has executed, then execution of the operation will + be suppressed and the set exception will be thrown instead. Otherwise, if the operation fails, then + this property will be set to the exception that was thrown. In either case, interceptors that run + after the operation can change this property to change the exception that will be thrown, or set this + property to null to cause no exception to be thrown at all. + + + When an operation fails both this property and the property are set + to the exception that was thrown. However, the this property can be set or changed by + interceptors, while the property will always represent + the original exception thrown. + + + + + Set to the status of the after an async operation has finished. Not used for + synchronous operations. + + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Creates a new that contains all the contextual information in this + interception context together with the given property value. + + The value that will be assigned to the target property. + A new interception context associated with the given property value. + + + + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + Used for dispatching operations to a such that any + registered on will be notified before and after the + operation executes. + Instances of this class are obtained through the the fluent API. + + + This class is used internally by Entity Framework when executing commands. It is provided publicly so that + code that runs outside of the core EF assemblies can opt-in to command interception/tracing. This is + typically done by EF providers that are executing commands on behalf of EF. + + + + + Sends and + to any + registered on before/after making a + call to . + + + Note that the result of executing the command is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The command on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after making a + call to . + + + Note that the result of executing the command is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The command on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after making a + call to . + + + Note that the result of executing the command is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The command on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after making a + call to . + + + Note that the result of executing the command is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The command on which the operation will be executed. + Optional information about the context of the call being made. + The cancellation token for the asynchronous operation. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after making a + call to . + + + Note that the result of executing the command is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The command on which the operation will be executed. + Optional information about the context of the call being made. + The cancellation token for the asynchronous operation. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after making a + call to . + + + Note that the result of executing the command is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The command on which the operation will be executed. + Optional information about the context of the call being made. + The cancellation token for the asynchronous operation. + The result of the operation, which may have been modified by interceptors. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Represents contextual information associated with calls into + implementations. + + + An instance of this class is passed to the dispatch methods of + and does not contain mutable information such as the result of the operation. This mutable information + is obtained from the that is passed to the interceptors. + Instances of this class are publicly immutable. To add contextual information use one of the + With... or As... methods to create a new interception context containing the new information. + + + + + Constructs a new with no state. + + + + + Creates a new by copying state from the given + interception context. Also see + + The context from which to copy state. + + + + Creates a new that contains all the contextual information in this + interception context together with the given . + + The command behavior to associate. + A new interception context associated with the given command behavior. + + + + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context the flag set to true. + + A new interception context associated with the async flag set. + + + + + + + + + + + + + + + + The that will be used or has been used to execute the command with a + . This property is only used for + and its async counterparts. + + + + + Represents contextual information associated with calls into + implementations including the result of the operation. + + The type of the operation's results. + + Instances of this class are publicly immutable for contextual information. To add + contextual information use one of the With... or As... methods to create a new + interception context containing the new information. + + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Prevents the operation from being executed if called before the operation has executed. + + + Thrown if this method is called after the operation has already executed. + + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context together with the given . + + The command behavior to associate. + A new interception context associated with the given command behavior. + + + + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + If execution of the operation completes without throwing, then this property will contain + the result of the operation. If the operation was suppressed or did not fail, then this property + will always contain the default value for the generic type. + + + When an operation operation completes without throwing both this property and the + property are set. However, the property can be set or changed by interceptors, + while this property will always represent the actual result returned by the operation, if any. + + + + + If this property is set before the operation has executed, then execution of the operation will + be suppressed and the set result will be returned instead. Otherwise, if the operation succeeds, then + this property will be set to the returned result. In either case, interceptors that run + after the operation can change this property to change the result that will be returned. + + + When an operation operation completes without throwing both this property and the + property are set. However, this property can be set or changed by interceptors, while the + property will always represent the actual result returned by the + operation, if any. + + + + + When true, this flag indicates that that execution of the operation has been suppressed by + one of the interceptors. This can be done before the operation has executed by calling + , by setting an to be thrown, or + by setting the operation result using . + + + + + Gets or sets a value containing arbitrary user-specified state information associated with the operation. + + + + + If execution of the operation fails, then this property will contain the exception that was + thrown. If the operation was suppressed or did not fail, then this property will always be null. + + + When an operation fails both this property and the property are set + to the exception that was thrown. However, the property can be set or + changed by interceptors, while this property will always represent the original exception thrown. + + + + + If this property is set before the operation has executed, then execution of the operation will + be suppressed and the set exception will be thrown instead. Otherwise, if the operation fails, then + this property will be set to the exception that was thrown. In either case, interceptors that run + after the operation can change this property to change the exception that will be thrown, or set this + property to null to cause no exception to be thrown at all. + + + When an operation fails both this property and the property are set + to the exception that was thrown. However, the this property can be set or changed by + interceptors, while the property will always represent + the original exception thrown. + + + + + Set to the status of the after an async operation has finished. Not used for + synchronous operations. + + + + + Base class that implements . This class is a convenience for + use when only one or two methods of the interface actually need to have any implementation. + + + + + + + + + + + + + + + + + + + + + + + Represents contextual information associated with calls into + implementations. + + + Instances of this class are publicly immutable for contextual information. To add + contextual information use one of the With... or As... methods to create a new + interception context containing the new information. + + + + + Constructs a new with no state. + + + + + Creates a new by copying state from the given + interception context. Also see + + The context from which to copy state. + + + + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context the flag set to true. + + A new interception context associated with the async flag set. + + + + + + + + + + + + + + + + The original tree created by Entity Framework. Interceptors can change the + property to change the tree that will be used, but the + will always be the tree created by Entity Framework. + + + + + The command tree that will be used by Entity Framework. This starts as the tree contained in the + the property but can be set by interceptors to change + the tree that will be used by Entity Framework. + + + + + Gets or sets a value containing arbitrary user-specified state information associated with the operation. + + + + + Used for dispatching operations to a such that any + registered on will be notified before and after the + operation executes. + Instances of this class are obtained through the the fluent API. + + + This class is used internally by Entity Framework when interacting with . + It is provided publicly so that code that runs outside of the core EF assemblies can opt-in to command + interception/tracing. This is typically done by EF providers that are executing commands on behalf of EF. + + + + + Sends and + to any + registered on before/after making a + call to . + + + Note that the result of executing the command is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after making a + call to . + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + + + + Sends and + to any + registered on before/after making a + call to . + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + + + + Sends and + to any + registered on before/after + getting . + + + Note that the value of the property is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after + setting . + + The connection on which the operation will be executed. + Information about the context of the call being made, including the value to be set. + + + + Sends and + to any + registered on before/after + getting . + + + Note that the value of the property is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after + getting . + + + Note that the value of the property is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after + getting . + + + Note that the value of the property is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after making a + call to . + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + + + + Sends and + to any + registered on before/after making a + call to . + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + + + + Sends and + to any + registered on before/after making a + call to . + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + The cancellation token. + A task that represents the asynchronous operation. + + + + Sends and + to any + registered on before/after + getting . + + + Note that the value of the property is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after + getting . + + + Note that the value of the property is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The connection on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Provides access to all dispatchers through the the fluent API. + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Provides methods for dispatching to interceptors for + interception of methods on . + + + + + Provides methods for dispatching to interceptors for + interception of methods on . + + + + + Provides methods for dispatching to interceptors for + interception of methods on . + + + + + This is the registration point for interceptors. Interceptors + receive notifications when EF performs certain operations such as executing commands against + the database. For example, see . + + + + + Registers a new to receive notifications. Note that the interceptor + must implement some interface that extends from to be useful. + + The interceptor to add. + + + + Removes a registered so that it will no longer receive notifications. + If the given interceptor is not registered, then this is a no-op. + + The interceptor to remove. + + + + This is the entry point for dispatching to interceptors. This is usually only used internally by + Entity Framework but it is provided publicly so that other code can make sure that registered + interceptors are called when operations are performed on behalf of EF. For example, EF providers + a may make use of this when executing commands. + + + + + Used for dispatching operations to a such that any + registered on will be notified before and after the + operation executes. + Instances of this class are obtained through the the fluent API. + + + This class is used internally by Entity Framework when interacting with . + It is provided publicly so that code that runs outside of the core EF assemblies can opt-in to command + interception/tracing. This is typically done by EF providers that are executing commands on behalf of EF. + + + + + Sends and + to any + registered on before/after + getting . + + + Note that the value of the property is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The transaction on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after + getting . + + + Note that the value of the property is returned by this method. The result is not available + in the interception context passed into this method since the interception context is cloned before + being passed to interceptors. + + The transaction on which the operation will be executed. + Optional information about the context of the call being made. + The result of the operation, which may have been modified by interceptors. + + + + Sends and + to any + registered on before/after making a + call to . + + The transaction on which the operation will be executed. + Optional information about the context of the call being made. + + + + Sends and + to any + registered on before/after making a + call to . + + The transaction on which the operation will be executed. + Optional information about the context of the call being made. + + + + Sends and + to any + registered on before/after making a + call to . + + The transaction on which the operation will be executed. + Optional information about the context of the call being made. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Represents contextual information associated with calls to that don't return any results. + + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The connection on which the transaction was started. + A new interception context that also contains the connection on which the transaction was started. + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + + + + The connection on which the transaction was started + + + + + Represents contextual information associated with calls to with return type . + + The return type of the target method. + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + + + + Represents contextual information associated with calls to + implementations. + + + Instances of this class are publicly immutable for contextual information. To add + contextual information use one of the With... or As... methods to create a new + interception context containing the new information. + + + + + Constructs a new with no state. + + + + + Creates a new by copying immutable state from the given + interception context. Also see + + The context from which to copy state. + + + + Creates a new that contains all the contextual information in this + interception context together with the flag set to true. + + A new interception context associated with the async flag set. + + + + Creates a new that contains all the contextual information in this + interception context together with the given . + + The transaction to be used in the invocation. + A new interception context associated with the given isolation level. + + + + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + Creates a new that contains all the contextual information in this + interception context with the addition of the given . + + The context to associate. + A new interception context associated with the given context. + + + + + + + + + + + + + + + + The that will be used or has been used to enlist a connection. + + + + + An object that implements this interface can be registered with to + receive notifications when Entity Framework creates command trees. + + + Interceptors can also be registered in the config file of the application. + See http://go.microsoft.com/fwlink/?LinkId=260883 for more information about Entity Framework configuration. + + + + + This method is called after a new has been created. + The tree that is used after interception can be changed by setting + while intercepting. + + + Command trees are created for both queries and insert/update/delete commands. However, query + command trees are cached by model which means that command tree creation only happens the + first time a query is executed and this notification will only happen at that time + + Contextual information associated with the call. + + + + Represents a mapping view. + + + + + Creates a instance having the specified entity SQL. + + A string that specifies the entity SQL. + + + + Gets the entity SQL. + + + + + Base abstract class for mapping view cache implementations. + Derived classes must have a parameterless constructor if used with . + + + + + Gets a view corresponding to the specified extent. + + An that specifies the extent. + A that specifies the mapping view, + or null if the extent is not associated with a mapping view. + + + + Gets a hash value computed over the mapping closure. + + + + + Specifies the means to create concrete instances. + + + + + Creates a generated view cache instance for the container mapping specified by + the names of the mapped containers. + + The name of a container in the conceptual model. + The name of a container in the store model. + + A that specifies the generated view cache. + + + + + Defines a custom attribute that specifies the mapping view cache type (subclass of ) + associated with a context type (subclass of or ). + The cache type is instantiated at runtime and used to retrieve pre-generated views in the + corresponding context. + + + + + Creates a instance that associates a context type + with a mapping view cache type. + + + A subclass of or . + + + A subclass of . + + + + + Creates a instance that associates a context type + with a mapping view cache type. + + + A subclass of or . + + The assembly qualified full name of the cache type. + + + + The base class for interceptors that handle the transaction operations. Derived classes can be registered using + or + . + + + + + Initializes a new instance of the class. + + + One of the Initialize methods needs to be called before this instance can be used. + + + + + Initializes this instance using the specified context. + + The context for which transaction operations will be handled. + + + + Initializes this instance using the specified context. + + The context for which transaction operations will be handled. + The connection to use for the initialization. + + This method is called by migrations. It is important that no action is performed on the + specified context that causes it to be initialized. + + + + + + + + Releases the resources used by this transaction handler. + + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + + Checks whether the supplied interception context contains the target context + or the supplied connection is the same as the one used by the target context. + + A connection. + An interception context. + + true if the supplied interception context contains the target context or + the supplied connection is the same as the one used by the target context if + the supplied interception context doesn't contain any contexts; false otherwise. + + + Note that calling this method will trigger initialization of any DbContext referenced from the + + + + + When implemented in a derived class returns the script to prepare the database + for this transaction handler. + + A script to change the database schema for this transaction handler. + + + + Can be implemented in a derived class. + + The connection beginning the transaction. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection that began the transaction. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection being closed. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection that was closed. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection being disposed. + Contextual information associated with the call. + + + + Can be implemented in a derived class. + + The connection that was disposed. + Contextual information associated with the call. + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection being opened. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection that was opened. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The connection. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The transaction. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The transaction. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The transaction. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The transaction. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The transaction being commited. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The transaction that was commited. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The transaction being disposed. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The transaction that was disposed. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The transaction being rolled back. + Contextual information associated with the call. + + + + + Can be implemented in a derived class. + + The transaction that was rolled back. + Contextual information associated with the call. + + + + + Gets the context. + + + The for which the transaction operations will be handled. + + + + + Gets the context. + + + The for which the transaction operations will be handled, could be null. + + + + + Gets the connection. + + + The for which the transaction operations will be handled. + + + This connection object is only used to determine whether a particular operation needs to be handled + in cases where a context is not available. + + + + + Gets or sets a value indicating whether this transaction handler is disposed. + + + true if disposed; otherwise, false. + + + + + This class is used by to write and read transaction tracing information + from the database. + To customize the definition of the transaction table you can derive from + this class and override . Derived classes can be registered + using . + + + By default EF will poll the resolved to check wether the database schema is compatible and + will try to modify it accordingly if it's not. To disable this check call + Database.SetInitializer<TTransactionContext>(null) where TTransactionContext is the type of the resolved context. + + + + + A DbContext instance represents a combination of the Unit Of Work and Repository patterns such that + it can be used to query from a database and group together changes that will then be written + back to the store as a unit. + DbContext is conceptually similar to ObjectContext. + + + DbContext is usually used with a derived type that contains properties for + the root entities of the model. These sets are automatically initialized when the + instance of the derived class is created. This behavior can be modified by applying the + attribute to either the entire derived context + class, or to individual properties on the class. + The Entity Data Model backing the context can be specified in several ways. When using the Code First + approach, the properties on the derived context are used to build a model + by convention. The protected OnModelCreating method can be overridden to tweak this model. More + control over the model used for the Model First approach can be obtained by creating a + explicitly from a and passing this model to one of the DbContext constructors. + When using the Database First or Model First approach the Entity Data Model can be created using the + Entity Designer (or manually through creation of an EDMX file) and then this model can be specified using + entity connection string or an object. + The connection to the database (including the name of the database) can be specified in several ways. + If the parameterless DbContext constructor is called from a derived context, then the name of the derived context + is used to find a connection string in the app.config or web.config file. If no connection string is found, then + the name is passed to the DefaultConnectionFactory registered on the class. The connection + factory then uses the context name as the database name in a default connection string. (This default connection + string points to .\SQLEXPRESS on the local machine unless a different DefaultConnectionFactory is registered.) + Instead of using the derived context name, the connection/database name can also be specified explicitly by + passing the name to one of the DbContext constructors that takes a string. The name can also be passed in + the form "name=myname", in which case the name must be found in the config file or an exception will be thrown. + Note that the connection found in the app.config or web.config file can be a normal database connection + string (not a special Entity Framework connection string) in which case the DbContext will use Code First. + However, if the connection found in the config file is a special Entity Framework connection string, then the + DbContext will use Database/Model First and the model specified in the connection string will be used. + An existing or explicitly created DbConnection can also be used instead of the database/connection name. + A can be applied to a class derived from DbContext to set the + version of conventions used by the context when it creates a model. If no attribute is applied then the + latest version of conventions will be used. + + + + + Interface implemented by objects that can provide an instance. + The class implements this interface to provide access to the underlying + ObjectContext. + + + + + Gets the object context. + + The object context. + + + + Constructs a new context instance using conventions to create the name of the database to + which a connection will be made. The by-convention name is the full name (namespace + class name) + of the derived context class. + See the class remarks for how this is used to create a connection. + + + + + Constructs a new context instance using conventions to create the name of the database to + which a connection will be made, and initializes it from the given model. + The by-convention name is the full name (namespace + class name) of the derived context class. + See the class remarks for how this is used to create a connection. + + The model that will back this context. + + + + Constructs a new context instance using the given string as the name or connection string for the + database to which a connection will be made. + See the class remarks for how this is used to create a connection. + + Either the database name or a connection string. + + + + Constructs a new context instance using the given string as the name or connection string for the + database to which a connection will be made, and initializes it from the given model. + See the class remarks for how this is used to create a connection. + + Either the database name or a connection string. + The model that will back this context. + + + + Constructs a new context instance using the existing connection to connect to a database. + The connection will not be disposed when the context is disposed if + is false. + + An existing connection to use for the new context. + + If set to true the connection is disposed when the context is disposed, otherwise the caller must dispose the connection. + + + + + Constructs a new context instance using the existing connection to connect to a database, + and initializes it from the given model. + The connection will not be disposed when the context is disposed if + is false. + + An existing connection to use for the new context. + The model that will back this context. + + If set to true the connection is disposed when the context is disposed, otherwise the caller must dispose the connection. + + + + + Constructs a new context instance around an existing ObjectContext. + + An existing ObjectContext to wrap with the new context. + + If set to true the ObjectContext is disposed when the DbContext is disposed, otherwise the caller must dispose the connection. + + + + + This method is called when the model for a derived context has been initialized, but + before the model has been locked down and used to initialize the context. The default + implementation of this method does nothing, but it can be overridden in a derived class + such that the model can be further configured before it is locked down. + + + Typically, this method is called only once when the first instance of a derived context + is created. The model for that context is then cached and is for all further instances of + the context in the app domain. This caching can be disabled by setting the ModelCaching + property on the given ModelBuidler, but note that this can seriously degrade performance. + More control over caching is provided through use of the DbModelBuilder and DbContextFactory + classes directly. + + The builder that defines the model for the context being created. + + + + Returns a instance for access to entities of the given type in the context + and the underlying store. + + + Note that Entity Framework requires that this method return the same instance each time that it is called + for a given context instance and entity type. Also, the non-generic returned by the + method must wrap the same underlying query and set of entities. These invariants must + be maintained if this method is overridden for anything other than creating test doubles for unit testing. + See the class for more details. + + The type entity for which a set should be returned. + A set for the given entity type. + + + + Returns a non-generic instance for access to entities of the given type in the context + and the underlying store. + + The type of entity for which a set should be returned. + A set for the given entity type. + + Note that Entity Framework requires that this method return the same instance each time that it is called + for a given context instance and entity type. Also, the generic returned by the + method must wrap the same underlying query and set of entities. These invariants must + be maintained if this method is overridden for anything other than creating test doubles for unit testing. + See the class for more details. + + + + + Saves all changes made in this context to the underlying database. + + + The number of state entries written to the underlying database. This can include + state entries for entities and/or relationships. Relationship state entries are created for + many-to-many relationships and relationships where there is no foreign key property + included in the entity class (often referred to as independent associations). + + An error occurred sending updates to the database. + + A database command did not affect the expected number of rows. This usually indicates an optimistic + concurrency violation; that is, a row has been changed in the database since it was queried. + + + The save was aborted because validation of entity property values failed. + + + An attempt was made to use unsupported behavior such as executing multiple asynchronous commands concurrently + on the same context instance. + The context or connection have been disposed. + + Some error occurred attempting to process entities in the context either before or after sending commands + to the database. + + + + + Asynchronously saves all changes made in this context to the underlying database. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous save operation. + The task result contains the number of state entries written to the underlying database. This can include + state entries for entities and/or relationships. Relationship state entries are created for + many-to-many relationships and relationships where there is no foreign key property + included in the entity class (often referred to as independent associations). + + An error occurred sending updates to the database. + + A database command did not affect the expected number of rows. This usually indicates an optimistic + concurrency violation; that is, a row has been changed in the database since it was queried. + + + The save was aborted because validation of entity property values failed. + + + An attempt was made to use unsupported behavior such as executing multiple asynchronous commands concurrently + on the same context instance. + The context or connection have been disposed. + + Some error occurred attempting to process entities in the context either before or after sending commands + to the database. + + + + + Asynchronously saves all changes made in this context to the underlying database. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous save operation. + The task result contains the number of state entries written to the underlying database. This can include + state entries for entities and/or relationships. Relationship state entries are created for + many-to-many relationships and relationships where there is no foreign key property + included in the entity class (often referred to as independent associations). + + Thrown if the context has been disposed. + + + + Validates tracked entities and returns a Collection of containing validation results. + + Collection of validation results for invalid entities. The collection is never null and must not contain null values or results for valid entities. + + 1. This method calls DetectChanges() to determine states of the tracked entities unless + DbContextConfiguration.AutoDetectChangesEnabled is set to false. + 2. By default only Added on Modified entities are validated. The user is able to change this behavior + by overriding ShouldValidateEntity method. + + + + + Extension point allowing the user to override the default behavior of validating only + added and modified entities. + + DbEntityEntry instance that is supposed to be validated. + true to proceed with validation; false otherwise. + + + + Extension point allowing the user to customize validation of an entity or filter out validation results. + Called by . + + DbEntityEntry instance to be validated. + + User-defined dictionary containing additional info for custom validation. It will be passed to + + and will be exposed as + + . This parameter is optional and can be null. + + Entity validation result. Possibly null when overridden. + + + + Gets a object for the given entity providing access to + information about the entity and the ability to perform actions on the entity. + + The type of the entity. + The entity. + An entry for the entity. + + + + Gets a object for the given entity providing access to + information about the entity and the ability to perform actions on the entity. + + The entity. + An entry for the entity. + + + + Calls the protected Dispose method. + + + + + Disposes the context. The underlying is also disposed if it was created + is by this context or ownership was passed to this context when this context was created. + The connection to the database ( object) is also disposed if it was created + is by this context or ownership was passed to this context when this context was created. + + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + + + + + + + + + + + + + + Creates a Database instance for this context that allows for creation/deletion/existence checks + for the underlying database. + + + + + Returns the Entity Framework ObjectContext that is underlying this context. + + Thrown if the context has been disposed. + + + + Provides access to features of the context that deal with change tracking of entities. + + An object used to access features that deal with change tracking. + + + + Provides access to configuration options for the context. + + An object used to access configuration options. + + + + Initializes a new instance of the class. + + The connection used by the context for which the transactions will be recorded. + + + + + + + Gets or sets a that can be used to read and write instances. + + + + + A transaction handler that allows to gracefully recover from connection failures + during transaction commit by storing transaction tracing information in the database. + It needs to be registered by using . + + + This transaction handler uses to store the transaction information + the schema used can be configured by creating a class derived from + that overrides DbContext.OnModelCreating(DbModelBuilder) and passing it to the constructor of this class. + + + + + Initializes a new instance of the class using the default . + + + One of the Initialize methods needs to be called before this instance can be used. + + + + + Initializes a new instance of the class. + + The transaction context factory. + + One of the Initialize methods needs to be called before this instance can be used. + + + + + + + + + + + + + + + + + Stores the tracking information for the new transaction to the database in the same transaction. + + The connection that began the transaction. + Contextual information associated with the call. + + + + + If there was an exception thrown checks the database for this transaction and rethrows it if not found. + Otherwise marks the commit as succeeded and queues the transaction information to be deleted. + + The transaction that was commited. + Contextual information associated with the call. + + + + + Stops tracking the transaction that was rolled back. + + The transaction that was rolled back. + Contextual information associated with the call. + + + + + Stops tracking the transaction that was disposed. + + The transaction that was disposed. + Contextual information associated with the call. + + + + + Removes all the transaction history. + + + This method should only be invoked when there are no active transactions to remove any leftover history + that was not deleted due to catastrophic failures + + + + + Asynchronously removes all the transaction history. + + + This method should only be invoked when there are no active transactions to remove any leftover history + that was not deleted due to catastrophic failures + + A task that represents the asynchronous operation. + + + + Asynchronously removes all the transaction history. + + + This method should only be invoked when there are no active transactions to remove any leftover history + that was not deleted due to catastrophic failures + + The cancellation token. + A task that represents the asynchronous operation. + + + + Adds the specified transaction to the list of transactions that can be removed from the database + + The transaction to be removed from the database. + + + + Removes the transactions marked for deletion. + + + + + Asynchronously removes the transactions marked for deletion. + + A task that represents the asynchronous operation. + + + + Asynchronously removes the transactions marked for deletion. + + The cancellation token. + A task that represents the asynchronous operation. + + + + Removes the transactions marked for deletion if their number exceeds . + + + if set to true will remove all the old transactions even if their number does not exceed . + + + if set to true the operation will be executed using the associated execution strategy + + + + + Removes the transactions marked for deletion if their number exceeds . + + + if set to true will remove all the old transactions even if their number does not exceed . + + + if set to true the operation will be executed using the associated execution strategy + + The cancellation token. + A task that represents the asynchronous operation. + + + + Gets the associated with the if there is one; + otherwise returns null. + + The context + The associated . + + + + Gets the associated with the if there is one; + otherwise returns null. + + The context + The associated . + + + + Gets the transaction context. + + + The transaction context. + + + + + Gets the number of transactions to be executed on the context before the transaction log will be cleaned. + The default value is 20. + + + + + An implementation of this interface is used to initialize the underlying database when + an instance of a derived class is used for the first time. + This initialization can conditionally create the database and/or seed it with data. + The strategy used is set using the static InitializationStrategy property of the + class. + The following implementations are provided: , + , . + + The type of the context. + + + + Executes the strategy to initialize the database for the given context. + + The context. + + + + Rrepresents a transaction + + + + + + + + + + + A unique id assigned to a transaction object. + + + + + The local time when the transaction was started. + + + + + Helper class that is used to configure a parameter. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Creates a new parameter definition to pass Binary data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The maximum allowable length of the array data. + Value indicating whether or not all data should be padded to the maximum length. + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass Boolean data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass Byte data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass DateTime data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The precision of the parameter. + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass Decimal data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The numeric precision of the parameter. + The numeric scale of the parameter. + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass Double data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass GUID data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass Single data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass Short data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass Integer data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass Long data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass String data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The maximum allowable length of the string data. + Value indicating whether or not all data should be padded to the maximum length. + Value indicating whether or not the parameter supports Unicode content. + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass Time data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The precision of the parameter. + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass DateTimeOffset data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The precision of the parameter. + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass geography data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + Creates a new parameter definition to pass geometry data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Constant value to use as the default value for this parameter. + SQL expression used as the default value for this parameter. + The name of the parameter. + Provider specific data type to use for this parameter. + A value indicating whether the parameter is an output parameter. + The newly constructed parameter definition. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Creates a shallow copy of the current . + + A shallow copy of the current . + + + + Represents altering an existing stored procedure. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + A migration operation that affects stored procedures. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Represents an operation to modify a database schema. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the MigrationOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" + }'. + + + + + Gets additional arguments that may be processed by providers. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets an operation that will revert this operation. + + + + + Gets a value indicating if this operation may result in data loss. + + + + + Initializes a new instance of the class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the stored procedure. + The body of the stored procedure expressed in SQL. + Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the stored procedure. + + + The name of the stored procedure. + + + + + Gets the body of the stored procedure expressed in SQL. + + + The body of the stored procedure expressed in SQL. + + + + + Gets the parameters of the stored procedure. + + + The parameters of the stored procedure. + + + + + Gets a value indicating if this operation may result in data loss. Always returns false. + + + + + Initializes a new instance of the class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the stored procedure. + The body of the stored procedure expressed in SQL. + Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets an operation that will revert this operation. + Always returns a . + + + + + Represents changes made to custom annotations on a table. + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the AlterTableOperation class. + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Name of the table on which annotations have changed. + The custom annotations on the table that have changed. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Gets the name of the table on which annotations have changed. + + + + + Gets the columns to be included in the table for which annotations have changed. + + + + + Gets the custom annotations that have changed on the table. + + + + + Gets an operation that is the inverse of this one such that annotations will be changed back to how + they were before this operation was applied. + + + + + + + + Represents renaming an existing index. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the RenameIndexOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Name of the table the index belongs to. + Name of the index to be renamed. + New name for the index. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the table the index belongs to. + + + + + Gets the name of the index to be renamed. + + + + + Gets the new name for the index. + + + + + Gets an operation that reverts the rename. + + + + + + + + Used when scripting an update database operation to store the operations that would have been performed against the database. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The queries used to determine if this migration needs to be applied to the database. + This is used to generate an idempotent SQL script that can be run against a database at any version. + + + + + Adds a migration to this update database operation. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The id of the migration. + The individual operations applied by the migration. + + + + The queries used to determine if this migration needs to be applied to the database. + This is used to generate an idempotent SQL script that can be run against a database at any version. + + + + + Gets the migrations applied during the update database operation. + + + The migrations applied during the update database operation. + + + + + Gets a value indicating if any of the operations may result in data loss. + + + + + Represents a migration to be applied to the database. + + + + + Gets the id of the migration. + + + The id of the migration. + + + + + Gets the individual operations applied by this migration. + + + The individual operations applied by this migration. + + + + + Represents moving a stored procedure to a new schema in the database. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the stored procedure to move. + The new schema for the stored procedure. + Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the stored procedure to move. + + + The name of the stored procedure to move. + + + + + Gets the new schema for the stored procedure. + + + The new schema for the stored procedure. + + + + + Gets an operation that will revert this operation. + + + + + Gets a value indicating if this operation may result in data loss. Always returns false. + + + + + Represents renaming a stored procedure in the database. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the stored procedure to rename. + The new name for the stored procedure. + Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the stored procedure to rename. + + + The name of the stored procedure to rename. + + + + + Gets the new name for the stored procedure. + + + The new name for the stored procedure. + + + + + Gets an operation that will revert this operation. + + + + + Gets a value indicating if this operation may result in data loss. Always returns false. + + + + + Represents a migration operation that can not be performed, possibly because it is not supported by the targeted database provider. + + + + + Gets a value indicating if this operation may result in data loss. Always returns false. + + + + + Represents information about a parameter. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Represents information about a property of an entity. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the PropertyModel class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The data type for this property model. + Additional details about the data type. This includes details such as maximum length, nullability etc. + + + + Gets the data type for this property model. + + + + + Gets additional details about the data type of this property model. + This includes details such as maximum length, nullability etc. + + + + + Gets or sets the name of the property model. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets or sets a provider specific data type to use for this property model. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets or sets the maximum length for this property model. + Only valid for array data types. + + + + + Gets or sets the precision for this property model. + Only valid for decimal data types. + + + + + Gets or sets the scale for this property model. + Only valid for decimal data types. + + + + + Gets or sets a constant value to use as the default value for this property model. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets or sets a SQL expression used as the default value for this property model. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets or sets a value indicating if this property model is fixed length. + Only valid for array data types. + + + + + Gets or sets a value indicating if this property model supports Unicode characters. + Only valid for textual data types. + + + + + Initializes a new instance of the ParameterModel class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The data type for this parameter. + + + + Initializes a new instance of the ParameterModel class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The data type for this parameter. + Additional details about the data type. This includes details such as maximum length, nullability etc. + + + + Gets or sets a value indicating whether this instance is out parameter. + + + true if this instance is out parameter; otherwise, false. + + + + + Drops a stored procedure from the database. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the stored procedure to drop. + Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the stored procedure to drop. + + + The name of the stored procedure to drop. + + + + + Gets an operation that will revert this operation. + Always returns a . + + + + + Gets a value indicating if this operation may result in data loss. Always returns false. + + + + + Allows configuration to be performed for a lightweight convention based on + the entity types in a model. + + + + + Filters the entity types that this convention applies to based on a + predicate. + + A function to test each entity type for a condition. + + An instance so that multiple calls can be chained. + + + + + Filters the entity types that this convention applies to based on a predicate + while capturing a value to use later during configuration. + + Type of the captured value. + + A function to capture a value for each entity type. If the value is null, the + entity type will be filtered out. + + + An instance so that multiple calls can be chained. + + + + + Allows configuration of the entity types that this convention applies to. + + + An action that performs configuration against a + + . + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Allows configuration to be performed for a lightweight convention based on + the entity types in a model that inherit from a common, specified type. + + The common type of the entity types that this convention applies to. + + + + Filters the entity types that this convention applies to based on a + predicate. + + A function to test each entity type for a condition. + + An instance so that multiple calls can be chained. + + + + + Filters the entity types that this convention applies to based on a predicate + while capturing a value to use later during configuration. + + Type of the captured value. + + A function to capture a value for each entity type. If the value is null, the + entity type will be filtered out. + + + An instance so that multiple calls can be chained. + + + + + Allows configuration of the entity types that this convention applies to. + + + An action that performs configuration against a + + . + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Allows configuration to be performed for a lightweight convention based on + the entity types in a model that inherit from a common, specified type and a + captured value. + + The common type of the entity types that this convention applies to. + Type of the captured value. + + + + Allows configuration of the entity types that this convention applies to. + + + An action that performs configuration against a + using a captured value. + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Allows configuration to be performed for a lightweight convention based on + the entity types in a model and a captured value. + + Type of the captured value. + + + + Allows configuration of the entity types that this convention applies to. + + + An action that performs configuration against a + using a captured value. + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Allows configuration to be performed for an entity type in a model. + This configuration functionality is available via lightweight conventions. + + + + + Configures the entity set name to be used for this entity type. + The entity set name can only be configured for the base type in each set. + + The name of the entity set. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Excludes this entity type from the model so that it will not be mapped to the database. + + + The same instance so that multiple calls can be chained. + + + + + Changes this entity type to a complex type. + + + The same instance so that multiple calls can be chained. + + + + + Excludes a property from the model so that it will not be mapped to the database. + + The name of the property to be configured. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect if the property does not exist. + + + + + Excludes a property from the model so that it will not be mapped to the database. + + The property to be configured. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect if the property does not exist. + + + + + Configures a property that is defined on this type. + + The name of the property being configured. + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + The property being configured. + A configuration object that can be used to configure the property. + + + + Configures the primary key property for this entity type. + + The name of the property to be used as the primary key. + + The same instance so that multiple calls can be chained. + + + + + Configures the primary key property for this entity type. + + The property to be used as the primary key. + + The same instance so that multiple calls can be chained. + + + + + Configures the primary key property(s) for this entity type. + + The names of the properties to be used as the primary key. + + The same instance so that multiple calls can be chained. + + + + + Configures the primary key property(s) for this entity type. + + The properties to be used as the primary key. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured or if any + property does not exist. + + + + + Configures the table name that this entity type is mapped to. + + The name of the table. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Configures the table name that this entity type is mapped to. + + The name of the table. + The database schema of the table. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Sets an annotation in the model for the table to which this entity is mapped. The annotation + value can later be used when processing the table such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Calling this method will have no effect if the + annotation with the given name has already been configured. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same configuration instance so that multiple calls can be chained. + + + + Configures this type to use stored procedures for insert, update and delete. + The default conventions for procedure and parameter names will be used. + + The same configuration instance so that multiple calls can be chained. + + + + Configures this type to use stored procedures for insert, update and delete. + + + Configuration to override the default conventions for procedure and parameter names. + + The same configuration instance so that multiple calls can be chained. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Gets the of this entity type. + + + + + Allows configuration to be performed for an entity type in a model. + This configuration functionality is available via lightweight conventions. + + A type inherited by the entity type. + + + + Configures the entity set name to be used for this entity type. + The entity set name can only be configured for the base type in each set. + + The name of the entity set. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Excludes this entity type from the model so that it will not be mapped to the database. + + + The same instance so that multiple calls can be chained. + + + + + Changes this entity type to a complex type. + + + The same instance so that multiple calls can be chained. + + + + + Excludes a property from the model so that it will not be mapped to the database. + + The type of the property to be ignored. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + + The same instance so that multiple calls can be chained. + + + + + Configures a property that is defined on this type. + + The type of the property being configured. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures the primary key property(s) for this entity type. + + The type of the key. + A lambda expression representing the property to be used as the primary key. C#: t => t.Id VB.Net: Function(t) t.Id If the primary key is made up of multiple properties then specify an anonymous type including the properties. C#: t => new { t.Id1, t.Id2 } VB.Net: Function(t) New With { t.Id1, t.Id2 } + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Configures the table name that this entity type is mapped to. + + The name of the table. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Configures the table name that this entity type is mapped to. + + The name of the table. + The database schema of the table. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Sets an annotation in the model for the table to which this entity is mapped. The annotation + value can later be used when processing the table such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Calling this method will have no effect if the + annotation with the given name has already been configured. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same configuration instance so that multiple calls can be chained. + + + + Configures this type to use stored procedures for insert, update and delete. + The default conventions for procedure and parameter names will be used. + + The same configuration instance so that multiple calls can be chained. + + + + Configures this type to use stored procedures for insert, update and delete. + + + Configuration to override the default conventions for procedure and parameter names. + + The same configuration instance so that multiple calls can be chained. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Gets the of this entity type. + + + + + Identifies conventions that can be added to or removed from a instance. + + + Note that implementations of this interface must be immutable. + + + + + A general purpose class for Code First conventions that read attributes from .NET properties + and generate column annotations based on those attributes. + + The type of attribute to discover. + The type of annotation that will be created. + + + + A convention that doesn't override configuration. + + + + + The derived class can use the default constructor to apply a set rule of that change the model configuration. + + + + + Begins configuration of a lightweight convention that applies to all mapped types in + the model. + + A configuration object for the convention. + + + + Begins configuration of a lightweight convention that applies to all mapped types in + the model that derive from or implement the specified type. + + The type of the entities that this convention will apply to. + A configuration object for the convention. + This method does not add new types to the model. + + + + Begins configuration of a lightweight convention that applies to all properties + in the model. + + A configuration object for the convention. + + + + Begins configuration of a lightweight convention that applies to all primitive + properties of the specified type in the model. + + The type of the properties that the convention will apply to. + A configuration object for the convention. + + The convention will apply to both nullable and non-nullable properties of the + specified type. + + + + + Constructs a convention that will create column annotations with the given name and + using the given factory delegate. + + The name of the annotations to create. + A factory for creating the annotation on each column. + + + + A general purpose class for Code First conventions that read attributes from .NET types + and generate table annotations based on those attributes. + + The type of attribute to discover. + The type of annotation that will be created. + + + + Constructs a convention that will create table annotations with the given name and + using the given factory delegate. + + The name of the annotations to create. + A factory for creating the annotation on each table. + + + + A convention for discovering attributes on properties and generating + column annotations in the model. + + + + + Constructs a new instance of the convention. + + + + + Base class for conventions that process CLR attributes found on primitive properties in the model. + + The type of the attribute to look for. + + + + Initializes a new instance of the class. + + + + + Applies this convention to a property that has an attribute of type TAttribute applied. + + The configuration for the property that has the attribute. + The attribute. + + + + Base class for conventions that process CLR attributes found on properties of types in the model. + + + Note that the derived convention will be applied for any non-static property on the mapped type that has + the specified attribute, even if it wasn't included in the model. + + The type of the attribute to look for. + + + + Initializes a new instance of the class. + + + + + Applies this convention to a property that has an attribute of type TAttribute applied. + + The member info for the property that has the attribute. + The configuration for the class that contains the property. + The attribute. + + + + Base class for conventions that process CLR attributes found in the model. + + The type of the attribute to look for. + + + + Initializes a new instance of the class. + + + + + Applies this convention to a class that has an attribute of type TAttribute applied. + + The configuration for the class that contains the property. + The attribute. + + + + Used to configure a property in a mapping fragment. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the name of the database column used to store the property, in a mapping fragment. + + The name of the column. + The same PropertyMappingConfiguration instance so that multiple calls can be chained. + + + + Sets an annotation in the model for the database column used to store the property. The annotation + value can later be used when processing the column such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Passing a null value clears any annotation with + the given name on the column that had been previously set. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same PropertyMappingConfiguration instance so that multiple calls can be chained. + + + + Convention to introduce indexes for foreign keys. + + + + + A convention that operates on the database section of the model after the model is created. + + The type of metadata item that this convention operates on. + + + + Applies this convention to an item in the model. + + The item to apply the convention to. + The model. + + + + + + + A convention that operates on the conceptual section of the model after the model is created. + + The type of metadata item that this convention operates on. + + + + Applies this convention to an item in the model. + + The item to apply the convention to. + The model. + + + + Useful extension methods for use with Entity Framework LINQ queries. + + + + + Specifies the related objects to include in the query results. + + + This extension method calls the Include(String) method of the source object, + if such a method exists. If the source does not have a matching method, + then this method does nothing. The , , + and types all have an appropriate Include method to call. + Paths are all-inclusive. For example, if an include call indicates Include("Orders.OrderLines"), not only will + OrderLines be included, but also Orders. When you call the Include method, the query path is only valid on + the returned instance of the . Other instances of + and the object context itself are not affected. Because the Include method returns the query object, + you can call this method multiple times on an to specify multiple paths for the query. + + The type of entity being queried. + + The source on which to call Include. + + The dot-separated list of related objects to return in the query results. + + A new with the defined query path. + + + + + Specifies the related objects to include in the query results. + + + This extension method calls the Include(String) method of the source object, + if such a method exists. If the source does not have a matching method, + then this method does nothing. The , , + and types all have an appropriate Include method to call. + Paths are all-inclusive. For example, if an include call indicates Include("Orders.OrderLines"), not only will + OrderLines be included, but also Orders. When you call the Include method, the query path is only valid on + the returned instance of the . Other instances of + and the object context itself are not affected. Because the Include method returns the query object, + you can call this method multiple times on an to specify multiple paths for the query. + + + The source on which to call Include. + + The dot-separated list of related objects to return in the query results. + + A new with the defined query path. + + + + + Specifies the related objects to include in the query results. + + + The path expression must be composed of simple property access expressions together with calls to Select for + composing additional includes after including a collection proprty. Examples of possible include paths are: + To include a single reference: query.Include(e => e.Level1Reference) + To include a single collection: query.Include(e => e.Level1Collection) + To include a reference and then a reference one level down: query.Include(e => e.Level1Reference.Level2Reference) + To include a reference and then a collection one level down: query.Include(e => e.Level1Reference.Level2Collection) + To include a collection and then a reference one level down: query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Reference)) + To include a collection and then a collection one level down: query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Collection)) + To include a collection and then a reference one level down: query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Reference)) + To include a collection and then a collection one level down: query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Collection)) + To include a collection, a reference, and a reference two levels down: query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Reference.Level3Reference)) + To include a collection, a collection, and a reference two levels down: query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Collection.Select(l2 => l2.Level3Reference))) + This extension method calls the Include(String) method of the source IQueryable object, if such a method exists. + If the source IQueryable does not have a matching method, then this method does nothing. + The Entity Framework ObjectQuery, ObjectSet, DbQuery, and DbSet types all have an appropriate Include method to call. + When you call the Include method, the query path is only valid on the returned instance of the IQueryable<T>. Other + instances of IQueryable<T> and the object context itself are not affected. Because the Include method returns the + query object, you can call this method multiple times on an IQueryable<T> to specify multiple paths for the query. + + The type of entity being queried. + The type of navigation property being included. + The source IQueryable on which to call Include. + A lambda expression representing the path to include. + + A new IQueryable<T> with the defined query path. + + + + + Returns a new query where the entities returned will not be cached in the + or . This method works by calling the AsNoTracking method of the + underlying query object. If the underlying query object does not have an AsNoTracking method, + then calling this method will have no affect. + + The element type. + The source query. + A new query with NoTracking applied, or the source query if NoTracking is not supported. + + + + Returns a new query where the entities returned will not be cached in the + or . This method works by calling the AsNoTracking method of the + underlying query object. If the underlying query object does not have an AsNoTracking method, + then calling this method will have no affect. + + The source query. + A new query with NoTracking applied, or the source query if NoTracking is not supported. + + + + Returns a new query that will stream the results instead of buffering. This method works by calling + the AsStreaming method of the underlying query object. If the underlying query object does not have + an AsStreaming method, then calling this method will have no affect. + + + The type of the elements of . + + + An to apply AsStreaming to. + + A new query with AsStreaming applied, or the source query if AsStreaming is not supported. + + + + Returns a new query that will stream the results instead of buffering. This method works by calling + the AsStreaming method of the underlying query object. If the underlying query object does not have + an AsStreaming method, then calling this method will have no affect. + + + An to apply AsStreaming to. + + A new query with AsStreaming applied, or the source query if AsStreaming is not supported. + + + + Enumerates the query such that for server queries such as those of , + + , + , and others the results of the query will be loaded into the associated + + , + or other cache on the client. + This is equivalent to calling ToList and then throwing away the list without the overhead of actually creating the list. + + The source query. + + + + Asynchronously enumerates the query such that for server queries such as those of , + + , + , and others the results of the query will be loaded into the associated + + , + or other cache on the client. + This is equivalent to calling ToList and then throwing away the list without the overhead of actually creating the list. + + The source query. + + A task that represents the asynchronous operation. + + + + + Asynchronously enumerates the query such that for server queries such as those of , + + , + , and others the results of the query will be loaded into the associated + + , + or other cache on the client. + This is equivalent to calling ToList and then throwing away the list without the overhead of actually creating the list. + + The source query. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + + + Asynchronously enumerates the query results and performs the specified action on each element. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + An to enumerate. + + The action to perform on each element. + A task that represents the asynchronous operation. + + + + Asynchronously enumerates the query results and performs the specified action on each element. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + An to enumerate. + + The action to perform on each element. + + A to observe while waiting for the task to complete. + + A task that represents the asynchronous operation. + + + + Asynchronously enumerates the query results and performs the specified action on each element. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to enumerate. + + The action to perform on each element. + A task that represents the asynchronous operation. + + + + Asynchronously enumerates the query results and performs the specified action on each element. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to enumerate. + + The action to perform on each element. + + A to observe while waiting for the task to complete. + + A task that represents the asynchronous operation. + + + + Creates a from an by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + An to create a from. + + + A task that represents the asynchronous operation. + The task result contains a that contains elements from the input sequence. + + + + + Creates a from an by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + An to create a from. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains elements from the input sequence. + + + + + Creates a from an by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to create a from. + + + A task that represents the asynchronous operation. + The task result contains a that contains elements from the input sequence. + + + + + Creates a from an by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to create a list from. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains elements from the input sequence. + + + + + Creates an array from an by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to create an array from. + + + A task that represents the asynchronous operation. + The task result contains an array that contains elements from the input sequence. + + + + + Creates an array from an by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to create an array from. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains an array that contains elements from the input sequence. + + + + + Creates a from an by enumerating it asynchronously + according to a specified key selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the key returned by . + + + An to create a from. + + A function to extract a key from each element. + + A task that represents the asynchronous operation. + The task result contains a that contains selected keys and values. + + + + + Creates a from an by enumerating it asynchronously + according to a specified key selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the key returned by . + + + An to create a from. + + A function to extract a key from each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains selected keys and values. + + + + + Creates a from an by enumerating it asynchronously + according to a specified key selector function and a comparer. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the key returned by . + + + An to create a from. + + A function to extract a key from each element. + + An to compare keys. + + + A task that represents the asynchronous operation. + The task result contains a that contains selected keys and values. + + + + + Creates a from an by enumerating it asynchronously + according to a specified key selector function and a comparer. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the key returned by . + + + An to create a from. + + A function to extract a key from each element. + + An to compare keys. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains selected keys and values. + + + + + Creates a from an by enumerating it asynchronously + according to a specified key selector and an element selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the key returned by . + + + The type of the value returned by . + + + An to create a from. + + A function to extract a key from each element. + A transform function to produce a result element value from each element. + + A task that represents the asynchronous operation. + The task result contains a that contains values of type + selected from the input sequence. + + + + + Creates a from an by enumerating it asynchronously + according to a specified key selector and an element selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the key returned by . + + + The type of the value returned by . + + + An to create a from. + + A function to extract a key from each element. + A transform function to produce a result element value from each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains values of type + selected from the input sequence. + + + + + Creates a from an by enumerating it asynchronously + according to a specified key selector function, a comparer, and an element selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the key returned by . + + + The type of the value returned by . + + + An to create a from. + + A function to extract a key from each element. + A transform function to produce a result element value from each element. + + An to compare keys. + + + A task that represents the asynchronous operation. + The task result contains a that contains values of type + selected from the input sequence. + + + + + Creates a from an by enumerating it asynchronously + according to a specified key selector function, a comparer, and an element selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the key returned by . + + + The type of the value returned by . + + + An to create a from. + + A function to extract a key from each element. + A transform function to produce a result element value from each element. + + An to compare keys. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains values of type + selected from the input sequence. + + + + + Asynchronously returns the first element of a sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the first element of. + + + A task that represents the asynchronous operation. + The task result contains the first element in . + + + is null. + + + doesn't implement . + + The source sequence is empty. + + + + Asynchronously returns the first element of a sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the first element of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the first element in . + + + + is + null + . + + + + doesn't implement + + . + + The source sequence is empty. + + + + Asynchronously returns the first element of a sequence that satisfies a specified condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the first element of. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains the first element in that passes the test in + . + + + + or + + is + null + . + + + + doesn't implement + + . + + + No element satisfies the condition in + + . + + + + + Asynchronously returns the first element of a sequence that satisfies a specified condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the first element of. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the first element in that passes the test in + . + + + + or + + is + null + . + + + + doesn't implement + + . + + + No element satisfies the condition in + + . + + + + + Asynchronously returns the first element of a sequence, or a default value if the sequence contains no elements. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the first element of. + + + A task that represents the asynchronous operation. + The task result contains default ( ) if + is empty; otherwise, the first element in . + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously returns the first element of a sequence, or a default value if the sequence contains no elements. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the first element of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains default ( ) if + is empty; otherwise, the first element in . + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously returns the first element of a sequence that satisfies a specified condition + or a default value if no such element is found. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the first element of. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains default ( ) if + is empty or if no element passes the test specified by ; otherwise, the first + element in that passes the test specified by . + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously returns the first element of a sequence that satisfies a specified condition + or a default value if no such element is found. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the first element of. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains default ( ) if + is empty or if no element passes the test specified by ; otherwise, the first + element in that passes the test specified by . + + + + or + + is + null + . + + + + doesn't implement + + . + + + + has more than one element. + + + + + Asynchronously returns the only element of a sequence, and throws an exception + if there is not exactly one element in the sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the single element of. + + + A task that represents the asynchronous operation. + The task result contains the single element of the input sequence. + + + + is + null + . + + + + doesn't implement + + . + + The source sequence is empty. + + + + Asynchronously returns the only element of a sequence, and throws an exception + if there is not exactly one element in the sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the single element of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the single element of the input sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + has more than one element. + + The source sequence is empty. + + + + Asynchronously returns the only element of a sequence that satisfies a specified condition, + and throws an exception if more than one such element exists. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the the single element of. + + A function to test an element for a condition. + + A task that represents the asynchronous operation. + The task result contains the single element of the input sequence that satisfies the condition in + . + + + + or + + is + null + . + + + + doesn't implement + + . + + + No element satisfies the condition in + + . + + + More than one element satisfies the condition in + + . + + + + + Asynchronously returns the only element of a sequence that satisfies a specified condition, + and throws an exception if more than one such element exists. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the single element of. + + A function to test an element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the single element of the input sequence that satisfies the condition in + . + + + + or + + is + null + . + + + + doesn't implement + + . + + + No element satisfies the condition in + + . + + + More than one element satisfies the condition in + + . + + + + + Asynchronously returns the only element of a sequence, or a default value if the sequence is empty; + this method throws an exception if there is more than one element in the sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the single element of. + + + A task that represents the asynchronous operation. + The task result contains the single element of the input sequence, or default () + if the sequence contains no elements. + + + + is + null + . + + + + doesn't implement + + . + + + + has more than one element. + + + + + Asynchronously returns the only element of a sequence, or a default value if the sequence is empty; + this method throws an exception if there is more than one element in the sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the single element of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the single element of the input sequence, or default () + if the sequence contains no elements. + + + + is + null + . + + + + doesn't implement + + . + + + + has more than one element. + + + + + Asynchronously returns the only element of a sequence that satisfies a specified condition or + a default value if no such element exists; this method throws an exception if more than one element + satisfies the condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the single element of. + + A function to test an element for a condition. + + A task that represents the asynchronous operation. + The task result contains the single element of the input sequence that satisfies the condition in + , or default ( ) if no such element is found. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously returns the only element of a sequence that satisfies a specified condition or + a default value if no such element exists; this method throws an exception if more than one element + satisfies the condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the single element of. + + A function to test an element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the single element of the input sequence that satisfies the condition in + , or default ( ) if no such element is found. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously determines whether a sequence contains a specified element by using the default equality comparer. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the single element of. + + The object to locate in the sequence. + + A task that represents the asynchronous operation. + The task result contains true if the input sequence contains the specified value; otherwise, false. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously determines whether a sequence contains a specified element by using the default equality comparer. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to return the single element of. + + The object to locate in the sequence. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if the input sequence contains the specified value; otherwise, false. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously determines whether a sequence contains any elements. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to check for being empty. + + + A task that represents the asynchronous operation. + The task result contains true if the source sequence contains any elements; otherwise, false. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously determines whether a sequence contains any elements. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An to check for being empty. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if the source sequence contains any elements; otherwise, false. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously determines whether any element of a sequence satisfies a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An whose elements to test for a condition. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains true if any elements in the source sequence pass the test in the specified predicate; otherwise, false. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously determines whether any element of a sequence satisfies a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An whose elements to test for a condition. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if any elements in the source sequence pass the test in the specified predicate; otherwise, false. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously determines whether all the elements of a sequence satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An whose elements to test for a condition. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains true if every element of the source sequence passes the test in the specified predicate; otherwise, false. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously determines whether all the elements of a sequence satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An whose elements to test for a condition. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if every element of the source sequence passes the test in the specified predicate; otherwise, false. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously returns the number of elements in a sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to be counted. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the input sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously returns the number of elements in a sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to be counted. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the input sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously returns the number of elements in a sequence that satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to be counted. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains the number of elements in the sequence that satisfy the condition in the predicate function. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + that satisfy the condition in the predicate function + is larger than + + . + + + + + Asynchronously returns the number of elements in a sequence that satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to be counted. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the sequence that satisfy the condition in the predicate function. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + that satisfy the condition in the predicate function + is larger than + + . + + + + + Asynchronously returns an that represents the total number of elements in a sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to be counted. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the input sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously returns an that represents the total number of elements in a sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to be counted. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the input sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously returns an that represents the number of elements in a sequence + that satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to be counted. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains the number of elements in the sequence that satisfy the condition in the predicate function. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + that satisfy the condition in the predicate function + is larger than + + . + + + + + Asynchronously returns an that represents the number of elements in a sequence + that satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to be counted. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the sequence that satisfy the condition in the predicate function. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + that satisfy the condition in the predicate function + is larger than + + . + + + + + Asynchronously returns the minimum value of a sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to determine the minimum of. + + + A task that represents the asynchronous operation. + The task result contains the minimum value in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously returns the minimum value of a sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to determine the minimum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the minimum value in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously invokes a projection function on each element of a sequence and returns the minimum resulting value. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the value returned by the function represented by . + + + An that contains the elements to determine the minimum of. + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the minimum value in the sequence. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously invokes a projection function on each element of a sequence and returns the minimum resulting value. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the value returned by the function represented by . + + + An that contains the elements to determine the minimum of. + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the minimum value in the sequence. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously returns the maximum value of a sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to determine the maximum of. + + + A task that represents the asynchronous operation. + The task result contains the maximum value in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously returns the maximum value of a sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + An that contains the elements to determine the maximum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the maximum value in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously invokes a projection function on each element of a sequence and returns the maximum resulting value. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the value returned by the function represented by . + + + An that contains the elements to determine the maximum of. + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the maximum value in the sequence. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously invokes a projection function on each element of a sequence and returns the maximum resulting value. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + The type of the value returned by the function represented by . + + + An that contains the elements to determine the maximum of. + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the maximum value in the sequence. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the sum of. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the sum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the sum of. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the sum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the sum of. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the sum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the sum of. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the sum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the sum of. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the sum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the sum of. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the sum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the sum of. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the sum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the sum of. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the sum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the sum of. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the sum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the sum of. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the sum of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the values in the sequence. + + + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of the sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of the sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of the sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of the sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the sum of the sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + + A sequence of values of type . + + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the sum of the projected values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + The number of elements in + + is larger than + + . + + + + + Asynchronously computes the average of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the average of. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the average of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the average of. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the average of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the average of. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the average of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the average of. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the average of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the average of. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the average of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the average of. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the average of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the average of. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the average of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the average of. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the average of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the average of. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of values to calculate the average of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the average of. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of nullable values. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A sequence of nullable values to calculate the average of. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + contains no elements. + + + + + Asynchronously computes the average of a sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Asynchronously computes the average of a sequence of nullable values that is obtained + by invoking a projection function on each element of the input sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the elements of . + + A sequence of values to calculate the average of. + A projection function to apply to each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the average of the sequence of values. + + + + or + + is + null + . + + + + doesn't implement + + . + + + + + Bypasses a specified number of elements in a sequence and then returns the remaining elements. + + The type of the elements of source. + A sequence to return elements from. + An expression that evaluates to the number of elements to skip. + A sequence that contains elements that occur after the specified index in the + input sequence. + + + + Returns a specified number of contiguous elements from the start of a sequence. + + The type of the elements of source. + The sequence to return elements from. + An expression that evaluates to the number of elements + to return. + A sequence that contains the specified number of elements from the + start of the input sequence. + + + + Controls the transaction creation behavior while executing a database command or query. + + + + + If no transaction is present then a new transaction will be used for the operation. + + + + + If an existing transaction is present then use it, otherwise execute the command or query without a transaction. + + + + + Specifies a structural type mapping. + + + + + Adds a property mapping. + + The property mapping to be added. + + + + Removes a property mapping. + + The property mapping to be removed. + + + + Adds a property mapping condition. + + The property mapping condition to be added. + + + + Removes a property mapping condition. + + The property mapping condition to be removed. + + + + Gets a read-only collection of property mappings. + + + + + Gets a read-only collection of property mapping conditions. + + + + + Represents the base item class for all the metadata + + + Represents the base item class for all the metadata + + + + + Adds or updates an annotation with the specified name and value. + + + If an annotation with the given name already exists then the value of that annotation + is updated to the given value. If the given value is null then the annotation will be + removed. + + The name of the annotation property. + The value of the annotation property. + + + + Removes an annotation with the specified name. + + The name of the annotation property. + true if an annotation was removed; otherwise, false. + + + + Returns a conceptual model built-in type that matches one of the + + values. + + + An object that represents the built-in type in the EDM. + + + One of the values. + + + + Returns the list of the general facet descriptions for a specified type. + + A object that represents the list of the general facet descriptions for a specified type. + + + + Gets the built-in type kind for this type. + + A object that represents the built-in type kind for this type. + + + + Gets the list of properties of the current type. + + A collection of type that contains the list of properties of the current type. + + + + Gets or sets the documentation associated with this type. + + A object that represents the documentation on this type. + + + + + Indicates that the given method is a proxy for an EDM function. + + + Note that this attribute has been replaced by the starting with EF6. + + + + + Indicates that the given method is a proxy for an EDM function. + + + Note that this class was called EdmFunctionAttribute in some previous versions of Entity Framework. + + + + + Initializes a new instance of the class. + + The namespace of the mapped-to function. + The name of the mapped-to function. + + + The namespace of the mapped-to function. + The namespace of the mapped-to function. + + + The name of the mapped-to function. + The name of the mapped-to function. + + + + Creates a new DbFunctionAttribute instance. + + The namespace name of the EDM function represented by the attributed method. + The function name of the EDM function represented by the attributed method. + + + + Provides common language runtime (CLR) methods that expose EDM canonical functions + for use in or LINQ to Entities queries. + + + Note that these functions have been moved to the class starting with EF6. + The functions are retained here only to help in the migration of older EF apps to EF6. + + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Left EDM function to return a given + number of the leftmost characters in a string. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input string. + The number of characters to return + A string containing the number of characters asked for from the left of the input string. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Right EDM function to return a given + number of the rightmost characters in a string. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input string. + The number of characters to return + A string containing the number of characters asked for from the right of the input string. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Reverse EDM function to return a given + string with the order of the characters reversed. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input string. + The input string with the order of the characters reversed. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical GetTotalOffsetMinutes EDM function to + return the number of minutes that the given date/time is offset from UTC. This is generally between +780 + and -780 (+ or - 13 hrs). + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The date/time value to use. + The offset of the input from UTC. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical TruncateTime EDM function to return + the given date with the time portion cleared. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The date/time value to use. + The input date with the time portion cleared. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical TruncateTime EDM function to return + the given date with the time portion cleared. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The date/time value to use. + The input date with the time portion cleared. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical CreateDateTime EDM function to + create a new object. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The year. + The month (1-based). + The day (1-based). + The hours. + The minutes. + The seconds, including fractional parts of the seconds if desired. + The new date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical CreateDateTimeOffset EDM function to + create a new object. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The year. + The month (1-based). + The day (1-based). + The hours. + The minutes. + The seconds, including fractional parts of the seconds if desired. + The time zone offset part of the new date. + The new date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical CreateTime EDM function to + create a new object. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The hours. + The minutes. + The seconds, including fractional parts of the seconds if desired. + The new time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddYears EDM function to + add the given number of years to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of years to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddYears EDM function to + add the given number of years to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of years to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMonths EDM function to + add the given number of months to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of months to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMonths EDM function to + add the given number of months to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of months to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddDays EDM function to + add the given number of days to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of days to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddDays EDM function to + add the given number of days to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of days to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddHours EDM function to + add the given number of hours to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of hours to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddHours EDM function to + add the given number of hours to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of hours to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddHours EDM function to + add the given number of hours to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of hours to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMinutes EDM function to + add the given number of minutes to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of minutes to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMinutes EDM function to + add the given number of minutes to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of minutes to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMinutes EDM function to + add the given number of minutes to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of minutes to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddSeconds EDM function to + add the given number of seconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of seconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddSeconds EDM function to + add the given number of seconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of seconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddSeconds EDM function to + add the given number of seconds to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of seconds to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMilliseconds EDM function to + add the given number of milliseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of milliseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMilliseconds EDM function to + add the given number of milliseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of milliseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMilliseconds EDM function to + add the given number of milliseconds to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of milliseconds to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMicroseconds EDM function to + add the given number of microseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of microseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMicroseconds EDM function to + add the given number of microseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of microseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMicroseconds EDM function to + add the given number of microseconds to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of microseconds to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddNanoseconds EDM function to + add the given number of nanoseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of nanoseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddNanoseconds EDM function to + add the given number of nanoseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of nanoseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddNanoseconds EDM function to + add the given number of nanoseconds to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of nanoseconds to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffYears EDM function to + calculate the number of years between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of years between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffYears EDM function to + calculate the number of years between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of years between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMonths EDM function to + calculate the number of months between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of months between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMonths EDM function to + calculate the number of months between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of months between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffDays EDM function to + calculate the number of days between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of days between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffDays EDM function to + calculate the number of days between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of days between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffHours EDM function to + calculate the number of hours between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of hours between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffHours EDM function to + calculate the number of hours between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of hours between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffHours EDM function to + calculate the number of hours between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of hours between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMinutes EDM function to + calculate the number of minutes between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of minutes between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMinutes EDM function to + calculate the number of minutes between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of minutes between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMinutes EDM function to + calculate the number of minutes between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of minutes between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffSeconds EDM function to + calculate the number of seconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of seconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffSeconds EDM function to + calculate the number of seconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of seconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffSeconds EDM function to + calculate the number of seconds between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of seconds between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMilliseconds EDM function to + calculate the number of milliseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of milliseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMilliseconds EDM function to + calculate the number of milliseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of milliseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMilliseconds EDM function to + calculate the number of milliseconds between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of milliseconds between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMicroseconds EDM function to + calculate the number of microseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of microseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMicroseconds EDM function to + calculate the number of microseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of microseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMicroseconds EDM function to + calculate the number of microseconds between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of microseconds between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffNanoseconds EDM function to + calculate the number of nanoseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of nanoseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffNanoseconds EDM function to + calculate the number of nanoseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of nanoseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffNanoseconds EDM function to + calculate the number of nanoseconds between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of nanoseconds between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Truncate EDM function to + truncate the given value to the number of specified digits. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The value to truncate. + The number of digits to preserve. + The truncated value. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Truncate EDM function to + truncate the given value to the number of specified digits. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The value to truncate. + The number of digits to preserve. + The truncated value. + + + + When used as part of a LINQ to Entities query, this method acts as an operator that ensures the input + is treated as a Unicode string. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function impacts the way the LINQ query is translated to a query that can be run in the database. + + The input string. + The input string treated as a Unicode string. + + + + When used as part of a LINQ to Entities query, this method acts as an operator that ensures the input + is treated as a non-Unicode string. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function impacts the way the LINQ query is translated to a query that can be run in the database. + + The input string. + The input string treated as a non-Unicode string. + + + + Options for query execution. + + + + + Creates a new instance of . + + Merge option to use for entity results. + + + + Creates a new instance of . + + Merge option to use for entity results. + Whether the query is streaming or buffering. + + + Determines whether the specified objects are equal. + true if the two objects are equal; otherwise, false. + The left object to compare. + The right object to compare. + + + + Determines whether the specified objects are not equal. + + The left object to compare. + The right object to compare. + true if the two objects are not equal; otherwise, false. + + + + + + + + + + Merge option to use for entity results. + + + + + Whether the query is streaming or buffering. + + + + + DataRecord interface supporting structured types and rich metadata information. + + + + + Gets a object with the specified index. + + + A object. + + The index of the row. + + + + Returns nested readers as objects. + + + Nested readers as objects. + + The ordinal of the column. + + + + Gets for this + + . + + + A object. + + + + + DataRecordInfo class providing a simple way to access both the type information and the column information. + + + + + Initializes a new object for a specific type with an enumerable collection of data fields. + + + The metadata for the type represented by this object, supplied by + + . + + + An enumerable collection of objects that represent column information. + + + + + Gets for this + + object. + + + A object. + + + + + Gets type info for this object as a object. + + + A value. + + + + + A prepared command definition, can be cached and reused to avoid + repreparing a command. + + + + + Initializes a new instance of the class using the supplied + + . + + + The supplied . + + method used to clone the + + + + Initializes a new instance of the class. + + + + + Creates and returns a object that can be executed. + + The command for database. + + + + Metadata Interface for all CLR types types + + + + + Value to pass to GetInformation to get the StoreSchemaDefinition + + + + + Value to pass to GetInformation to get the StoreSchemaMapping + + + + + Value to pass to GetInformation to get the ConceptualSchemaDefinition + + + + + Value to pass to GetInformation to get the StoreSchemaDefinitionVersion3 + + + + + Value to pass to GetInformation to get the StoreSchemaMappingVersion3 + + + + + Value to pass to GetInformation to get the ConceptualSchemaDefinitionVersion3 + + + + + Name of the MaxLength Facet + + + + + Name of the Unicode Facet + + + + + Name of the FixedLength Facet + + + + + Name of the Precision Facet + + + + + Name of the Scale Facet + + + + + Name of the Nullable Facet + + + + + Name of the DefaultValue Facet + + + + + Name of the Collation Facet + + + + + Name of the SRID Facet + + + + + Name of the IsStrict Facet + + + + When overridden in a derived class, returns the set of primitive types supported by the data source. + The set of types supported by the data source. + + + When overridden in a derived class, returns a collection of EDM functions supported by the provider manifest. + A collection of EDM functions. + + + Returns the FacetDescription objects for a particular type. + The FacetDescription objects for the specified EDM type. + The EDM type to return the facet description for. + + + When overridden in a derived class, this method maps the specified storage type and a set of facets for that type to an EDM type. + + The instance that describes an EDM type and a set of facets for that type. + + The TypeUsage instance that describes a storage type and a set of facets for that type to be mapped to the EDM type. + + + When overridden in a derived class, this method maps the specified EDM type and a set of facets for that type to a storage type. + The TypeUsage instance that describes a storage type and a set of facets for that type. + The TypeUsage instance that describes the EDM type and a set of facets for that type to be mapped to a storage type. + + + When overridden in a derived class, this method returns provider-specific information. + The XmlReader object that represents the mapping to the underlying data store catalog. + The type of the information to return. + + + Gets the provider-specific information. + The provider-specific information. + The type of the information to return. + + + Indicates if the provider supports escaping strings to be used as patterns in a Like expression. + True if this provider supports escaping strings to be used as patterns in a Like expression; otherwise, false. + If the provider supports escaping, the character that would be used as the escape character. + + + Provider writers should override this method to return the argument with the wildcards and the escape character escaped. This method is only used if SupportsEscapingLikeArgument returns true. + The argument with the wildcards and the escape character escaped. + The argument to be escaped. + + + + Returns a boolean that specifies whether the provider can handle expression trees + containing instances of DbInExpression. + The default implementation returns false for backwards compatibility. Derived classes can override this method. + + + false + + + + + Returns a boolean that specifies whether the provider can process expression trees not having DbProjectExpression + nodes directly under both Left and Right sides of DbUnionAllExpression and DbIntersectExpression + + + false + + + + Gets the namespace used by this provider manifest. + The namespace used by this provider manifest. + + + + The factory for building command definitions; use the type of this object + as the argument to the IServiceProvider.GetService method on the provider + factory; + + + + + Constructs an EF provider that will use the obtained from + the app domain Singleton for resolving EF dependencies such + as the instance to use. + + + + + Registers a handler to process non-error messages coming from the database provider. + + The connection to receive information for. + The handler to process messages. + + + + Create a Command Definition object given a command tree. + + command tree for the statement + an executable command definition object + + This method simply delegates to the provider's implementation of CreateDbCommandDefinition. + + + + Creates command definition from specified manifest and command tree. + The created command definition. + The manifest. + The command tree. + + + Creates a command definition object for the specified provider manifest and command tree. + An executable command definition object. + Provider manifest previously retrieved from the store provider. + Command tree for the statement. + + + + Create the default DbCommandDefinition object based on the prototype command + This method is intended for provider writers to build a default command definition + from a command. + Note: This will clone the prototype + + the prototype command + an executable command definition object + + + + See issue 2390 - cloning the DesignTimeVisible property on the + DbCommand can cause deadlocks. So here allow sub-classes to override. + + the object to clone + a clone of the + + + Returns provider manifest token given a connection. + The provider manifest token. + Connection to provider. + + + + Returns provider manifest token for a given connection. + + Connection to find manifest token from. + The provider manifest token for the specified connection. + + + Returns the provider manifest by using the specified version information. + The provider manifest by using the specified version information. + The token information associated with the provider manifest. + + + When overridden in a derived class, returns an instance of a class that derives from the DbProviderManifest. + A DbProviderManifest object that represents the provider manifest. + The token information associated with the provider manifest. + + + + Gets the that will be used to execute methods that use the specified connection. + + The database connection + + A new instance of + + + + + Gets the that will be used to execute methods that use the specified connection. + This overload should be used by the derived classes for compatability with wrapping providers. + + The database connection + The provider invariant name + + A new instance of + + + + + Gets the spatial data reader for the . + + The spatial data reader. + The reader where the spatial data came from. + The manifest token associated with the provider manifest. + + + + Gets the spatial services for the . + + The spatial services. + The token information associated with the provider manifest. + + + Gets the spatial services for the . + The spatial services. + Information about the database that the spatial services will be used for. + + + + Gets the spatial data reader for the . + + The spatial data reader. + The reader where the spatial data came from. + The token information associated with the provider manifest. + + + + Gets the spatial services for the . + + The spatial services. + The token information associated with the provider manifest. + + + + Sets the parameter value and appropriate facets for the given . + + The parameter. + The type of the parameter. + The value of the parameter. + + + + Sets the parameter value and appropriate facets for the given . + + The parameter. + The type of the parameter. + The value of the parameter. + + + Returns providers given a connection. + + The instanced based on the specified connection. + + Connection to provider. + + + Retrieves the DbProviderFactory based on the specified DbConnection. + The retrieved DbProviderFactory. + The connection to use. + + + + Return an XML reader which represents the CSDL description + + The name of the CSDL description. + An XmlReader that represents the CSDL description + + + Generates a data definition language (DDL script that creates schema objects (tables, primary keys, foreign keys) based on the contents of the StoreItemCollection parameter and targeted for the version of the database corresponding to the provider manifest token. + + Individual statements should be separated using database-specific DDL command separator. + It is expected that the generated script would be executed in the context of existing database with + sufficient permissions, and it should not include commands to create the database, but it may include + commands to create schemas and other auxiliary objects such as sequences, etc. + + A DDL script that creates schema objects based on the contents of the StoreItemCollection parameter and targeted for the version of the database corresponding to the provider manifest token. + The provider manifest token identifying the target version. + The structure of the database. + + + + Generates a data definition language (DDL) script that creates schema objects + (tables, primary keys, foreign keys) based on the contents of the StoreItemCollection + parameter and targeted for the version of the database corresponding to the provider manifest token. + + + Individual statements should be separated using database-specific DDL command separator. + It is expected that the generated script would be executed in the context of existing database with + sufficient permissions, and it should not include commands to create the database, but it may include + commands to create schemas and other auxiliary objects such as sequences, etc. + + The provider manifest token identifying the target version. + The structure of the database. + + A DDL script that creates schema objects based on the contents of the StoreItemCollection parameter + and targeted for the version of the database corresponding to the provider manifest token. + + + + + Creates a database indicated by connection and creates schema objects + (tables, primary keys, foreign keys) based on the contents of storeItemCollection. + + Connection to a non-existent database that needs to be created and populated with the store objects indicated with the storeItemCollection parameter. + Execution timeout for any commands needed to create the database. + The collection of all store items based on which the script should be created. + + + Creates a database indicated by connection and creates schema objects (tables, primary keys, foreign keys) based on the contents of a StoreItemCollection. + Connection to a non-existent database that needs to be created and populated with the store objects indicated with the storeItemCollection parameter. + Execution timeout for any commands needed to create the database. + The collection of all store items based on which the script should be created. + + + Returns a value indicating whether a given database exists on the server. + True if the provider can deduce the database only based on the connection. + Connection to a database whose existence is checked by this method. + Execution timeout for any commands needed to determine the existence of the database. + The collection of all store items from the model. This parameter is no longer used for determining database existence. + + + Returns a value indicating whether a given database exists on the server. + True if the provider can deduce the database only based on the connection. + Connection to a database whose existence is checked by this method. + Execution timeout for any commands needed to determine the existence of the database. + The collection of all store items from the model. This parameter is no longer used for determining database existence. + + + Returns a value indicating whether a given database exists on the server. + True if the provider can deduce the database only based on the connection. + Connection to a database whose existence is checked by this method. + Execution timeout for any commands needed to determine the existence of the database. + The collection of all store items from the model. This parameter is no longer used for determining database existence. + + + Returns a value indicating whether a given database exists on the server. + True if the provider can deduce the database only based on the connection. + Connection to a database whose existence is checked by this method. + Execution timeout for any commands needed to determine the existence of the database. + The collection of all store items from the model. This parameter is no longer used for determining database existence. + Override this method to avoid creating the store item collection if it is not needed. The default implementation evaluates the Lazy and calls the other overload of this method. + + + Deletes the specified database. + Connection to an existing database that needs to be deleted. + Execution timeout for any commands needed to delete the database. + The collection of all store items from the model. This parameter is no longer used for database deletion. + + + Deletes the specified database. + Connection to an existing database that needs to be deleted. + Execution timeout for any commands needed to delete the database. + The collection of all store items from the model. This parameter is no longer used for database deletion. + + + + Expands |DataDirectory| in the given path if it begins with |DataDirectory| and returns the expanded path, + or returns the given string if it does not start with |DataDirectory|. + + The path to expand. + The expanded path. + + + + Adds an that will be used to resolve additional default provider + services when a derived type is registered as an EF provider either using an entry in the application's + config file or through code-based registration in . + + The resolver to add. + + + + Called to resolve additional default provider services when a derived type is registered as an + EF provider either using an entry in the application's config file or through code-based + registration in . The implementation of this method in this + class uses the resolvers added with the AddDependencyResolver method to resolve + dependencies. + + + Use this method to set, add, or change other provider-related services. Note that this method + will only be called for such services if they are not already explicitly configured in some + other way by the application. This allows providers to set default services while the + application is still able to override and explicitly configure each service if required. + See and for more details. + + The type of the service to be resolved. + An optional key providing additional information for resolving the service. + An instance of the given type, or null if the service could not be resolved. + + + + Called to resolve additional default provider services when a derived type is registered as an + EF provider either using an entry in the application's config file or through code-based + registration in . The implementation of this method in this + class uses the resolvers added with the AddDependencyResolver method to resolve + dependencies. + + The type of the service to be resolved. + An optional key providing additional information for resolving the service. + All registered services that satisfy the given type and key, or an empty enumeration if there are none. + + + + A specialization of the ProviderManifest that accepts an XmlReader + + + + + Initializes a new instance of the class. + + + An object that provides access to the XML data in the provider manifest file. + + + + Returns the list of facet descriptions for the specified Entity Data Model (EDM) type. + + A collection of type that contains the list of facet descriptions for the specified EDM type. + + + An for which the facet descriptions are to be retrieved. + + + + Returns the list of primitive types supported by the storage provider. + + A collection of type that contains the list of primitive types supported by the storage provider. + + + + Returns the list of provider-supported functions. + + A collection of type that contains the list of provider-supported functions. + + + + Gets the namespace name supported by this provider manifest. + The namespace name supported by this provider manifest. + + + Gets the best mapped equivalent Entity Data Model (EDM) type for a specified storage type name. + The best mapped equivalent EDM type for a specified storage type name. + + + Gets the best mapped equivalent storage primitive type for a specified storage type name. + The best mapped equivalent storage primitive type for a specified storage type name. + + + + Class for representing a collection of items. + Most of the implementation for actual maintenance of the collection is + done by MetadataCollection + + + + + Class representing a read-only wrapper around MetadataCollection + + The type of items in this collection + + + Retrieves an item from this collection by using the specified identity. + An item from this collection. + The identity of the item to be searched for. + true to perform the case-insensitive search; otherwise, false. + + + Determines whether the collection contains an item with the specified identity. + true if the collection contains the item to be searched for; otherwise, false. The default is false. + The identity of the item. + + + Retrieves an item from this collection by using the specified identity. + true if there is an item that matches the search criteria; otherwise, false. + The identity of the item to be searched for. + true to perform the case-insensitive search; otherwise, false. + When this method returns, this output parameter contains an item from the collection. If there is no matched item, this output parameter contains null. + + + Returns an enumerator that can iterate through this collection. + + A that can be used to iterate through this + + . + + + + Returns the index of the specified value in this collection. + The index of the specified value in this collection. + A value to seek. + + + Gets a value indicating whether this collection is read-only. + true if this collection is read-only; otherwise, false. + + + Gets an item from this collection by using the specified identity. + An item from this collection. + The identity of the item to be searched for. + + + + The enumerator for MetadataCollection + + + + Disposes of this enumerator. + + + + Moves to the next member in the collection of type + + . + + + true if the enumerator is moved in the collection of type + + ; otherwise, false. + + + + + Positions the enumerator before the first position in the collection of type + + . + + + + Gets the member at the current position. + The member at the current position. + + + + Gets the member at the current position + + + + + Returns a strongly typed object by using the specified identity. + + The item that is specified by the identity. + The identity of the item. + The type returned by the method. + + + + Returns a strongly typed object by using the specified identity from this item collection. + + true if there is an item that matches the search criteria; otherwise, false. + The identity of the item. + + When this method returns, the output parameter contains a + + object. If there is no global item with the specified identity in the item collection, this output parameter contains null. + + The type returned by the method. + + + + Returns a strongly typed object by using the specified identity from this item collection. + + true if there is an item that matches the search criteria; otherwise, false. + The identity of the item. + true to perform the case-insensitive search; otherwise, false. + + When this method returns, the output parameter contains a + + object. If there is no global item with the specified identity in the item collection, this output parameter contains null. + + The type returned by the method. + + + + Returns a strongly typed object by using the specified identity with either case-sensitive or case-insensitive search. + + The item that is specified by the identity. + The identity of the item. + true to perform the case-insensitive search; otherwise, false. + The type returned by the method. + + + Returns all the items of the specified type from this item collection. + + A collection of type that contains all the items of the specified type. + + The type returned by the method. + + + + Returns an object by using the specified type name and the namespace name in this item collection. + + + An object that represents the type that matches the specified type name and the namespace name in this item collection. If there is no matched type, this method returns null. + + The name of the type. + The namespace of the type. + + + + Returns an object by using the specified type name and the namespace name from this item collection. + + true if there is a type that matches the search criteria; otherwise, false. + The name of the type. + The namespace of the type. + + When this method returns, this output parameter contains an + + object. If there is no type with the specified name and namespace name in this item collection, this output parameter contains null. + + + + + Returns an object by using the specified type name and the namespace name from this item collection. + + + An object that represents the type that matches the specified type name and the namespace name in this item collection. If there is no matched type, this method returns null. + + The name of the type. + The namespace of the type. + true to perform the case-insensitive search; otherwise, false. + + + + Returns an object by using the specified type name and the namespace name from this item collection. + + true if there is a type that matches the search criteria; otherwise, false. + The name of the type. + The namespace of the type. + true to perform the case-insensitive search; otherwise, false. + + When this method returns, this output parameter contains an + + object. If there is no type with the specified name and namespace name in this item collection, this output parameter contains null. + + + + Returns all the overloads of the functions by using the specified name from this item collection. + + A collection of type that contains all the functions that have the specified name. + + The full name of the function. + + + Returns all the overloads of the functions by using the specified name from this item collection. + + A collection of type that contains all the functions that have the specified name. + + The full name of the function. + true to perform the case-insensitive search; otherwise, false. + + + Returns all the overloads of the functions by using the specified name from this item collection. + A collection of type ReadOnlyCollection that contains all the functions that have the specified name. + A dictionary of functions. + The full name of the function. + true to perform the case-insensitive search; otherwise, false. + + + + Returns an object by using the specified entity container name. + + If there is no entity container, this method returns null; otherwise, it returns the first one. + The name of the entity container. + + + + Returns an object by using the specified entity container name. If there is no entity container, the output parameter contains null; otherwise, it contains the first entity container. + + true if there is an entity container that matches the search criteria; otherwise, false. + The name of the entity container. + + When this method returns, it contains an object. If there is no entity container, this output parameter contains null; otherwise, it contains the first entity container. + + + + + Returns an object by using the specified entity container name. + + If there is no entity container, this method returns null; otherwise, it returns the first entity container. + The name of the entity container. + true to perform the case-insensitive search; otherwise, false. + + + + Returns an object by using the specified entity container name. If there is no entity container, this output parameter contains null; otherwise, it contains the first entity container. + + true if there is an entity container that matches the search criteria; otherwise, false. + The name of the entity container. + true to perform the case-insensitive search; otherwise, false. + + When this method returns, it contains an object. If there is no entity container, this output parameter contains null; otherwise, it contains the first entity container. + + + + Gets the data model associated with this item collection. + The data model associated with this item collection. + + + + EntityRecordInfo class providing a simple way to access both the type information and the column information. + + + + + Initializes a new instance of the class of a specific entity type with an enumerable collection of data fields and with specific key and entity set information. + + + The of the entity represented by the + + described by this + + object. + + + An enumerable collection of objects that represent column information. + + The key for the entity. + The entity set to which the entity belongs. + + + + Gets the for the entity. + + The key for the entity. + + + + Public Entity SQL Parser class. + + + + Parse the specified query with the specified parameters. + + The containing + + and information describing inline function definitions if any. + + The EntitySQL query to be parsed. + The optional query parameters. + + + + Parse a specific query with a specific set variables and produce a + + . + + + The containing + + and information describing inline function definitions if any. + + The query to be parsed. + The optional query variables. + + + + Entity SQL query inline function definition, returned as a part of . + + + + Function name. + + + Function body and parameters. + + + Start position of the function definition in the eSQL query text. + + + End position of the function definition in the eSQL query text. + + + + Entity SQL Parser result information. + + + + A command tree produced during parsing. + + + + List of objects describing query inline function definitions. + + + + + Compares objects using reference equality. + + + + + Gets the default instance. + + + + + Wraps access to the transaction object on the underlying store connection and ensures that the + Entity Framework executes commands on the database within the context of that transaction. + An instance of this class is retrieved by calling BeginTransaction() on the + + object. + + + + + Commits the underlying store transaction + + + + + Rolls back the underlying store transaction + + + + + Cleans up this transaction object and ensures the Entity Framework + is no longer using that transaction. + + + + + Releases the resources used by this transaction object + + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + + + + + + + + + + + + + + Gets the database (store) transaction that is underlying this context transaction. + + + + + A service for obtaining the correct from a given + . + + + On .NET 4.5 the provider is publicly accessible from the connection. On .NET 4 the + default implementation of this service uses some heuristics to find the matching + provider. If these fail then a new implementation of this service can be registered + on to provide an appropriate resolution. + + + + + Returns the for the given connection. + + The connection. + The provider factory for the connection. + + + + Explicitly implemented by to prevent certain members from showing up + in the IntelliSense of scaffolded migrations. + + + + + Adds a custom to the migration. + Custom operation implementors are encouraged to create extension methods on + that provide a fluent-style API for adding new operations. + + The operation to add. + + + + A default implementation of that uses the + underlying provider to get the manifest token. + Note that to avoid multiple queries, this implementation using caching based on the actual type of + instance, the property, + and the property. + + + + + A service for getting a provider manifest token given a connection. + The class is used by default and makes use of the + underlying provider to get the token which often involves opening the connection. + A different implementation can be used instead by adding an + to that may use any information in the connection to return + the token. For example, if the connection is known to point to a SQL Server 2008 database then + "2008" can be returned without opening the connection. + + + + + Returns the manifest token to use for the given connection. + + The connection for which a manifest token is required. + The manifest token to use. + + + + + + + A strategy that is used to execute a command or query against the database, possibly with logic to retry when a failure occurs. + + + + + Executes the specified operation. + + A delegate representing an executable operation that doesn't return any results. + + + + Executes the specified operation and returns the result. + + + The return type of . + + + A delegate representing an executable operation that returns the result of type . + + The result from the operation. + + + + Executes the specified asynchronous operation. + + A function that returns a started task. + + A cancellation token used to cancel the retry operation, but not operations that are already in flight + or that already completed successfully. + + + A task that will run to completion if the original task completes successfully (either the + first time or after retrying transient failures). If the task fails with a non-transient error or + the retry limit is reached, the returned task will become faulted and the exception must be observed. + + + + + Executes the specified asynchronous operation and returns the result. + + + The result type of the returned by . + + + A function that returns a started task of type . + + + A cancellation token used to cancel the retry operation, but not operations that are already in flight + or that already completed successfully. + + + A task that will run to completion if the original task completes successfully (either the + first time or after retrying transient failures). If the task fails with a non-transient error or + the retry limit is reached, the returned task will become faulted and the exception must be observed. + + + + + Indicates whether this might retry the execution after a failure. + + + + + Provides the base implementation of the retry mechanism for unreliable operations and transient conditions that uses + exponentially increasing delays between retries. + + + A new instance will be created each time an operation is executed. + The following formula is used to calculate the delay after retryCount number of attempts: + min(random(1, 1.1) * (2 ^ retryCount - 1), maxDelay) + The retryCount starts at 0. + The random factor distributes uniformly the retry attempts from multiple simultaneous operations failing simultaneously. + + + + + Creates a new instance of . + + + The default retry limit is 5, which means that the total amount of time spent between retries is 26 seconds plus the random factor. + + + + + Creates a new instance of with the specified limits for number of retries and the delay between retries. + + The maximum number of retry attempts. + The maximum delay in milliseconds between retries. + + + + Repetitively executes the specified operation while it satisfies the current retry policy. + + A delegate representing an executable operation that doesn't return any results. + if the retry delay strategy determines the operation shouldn't be retried anymore + if an existing transaction is detected and the execution strategy doesn't support it + if this instance was already used to execute an operation + + + + Repetitively executes the specified operation while it satisfies the current retry policy. + + The type of result expected from the executable operation. + + A delegate representing an executable operation that returns the result of type . + + The result from the operation. + if the retry delay strategy determines the operation shouldn't be retried anymore + if an existing transaction is detected and the execution strategy doesn't support it + if this instance was already used to execute an operation + + + + Repetitively executes the specified asynchronous operation while it satisfies the current retry policy. + + A function that returns a started task. + + A cancellation token used to cancel the retry operation, but not operations that are already in flight + or that already completed successfully. + + + A task that will run to completion if the original task completes successfully (either the + first time or after retrying transient failures). If the task fails with a non-transient error or + the retry limit is reached, the returned task will become faulted and the exception must be observed. + + if the retry delay strategy determines the operation shouldn't be retried anymore + if an existing transaction is detected and the execution strategy doesn't support it + if this instance was already used to execute an operation + + + + Repeatedly executes the specified asynchronous operation while it satisfies the current retry policy. + + + The result type of the returned by . + + + A function that returns a started task of type . + + + A cancellation token used to cancel the retry operation, but not operations that are already in flight + or that already completed successfully. + + + A task that will run to completion if the original task completes successfully (either the + first time or after retrying transient failures). If the task fails with a non-transient error or + the retry limit is reached, the returned task will become faulted and the exception must be observed. + + if the retry delay strategy determines the operation shouldn't be retried anymore + if an existing transaction is detected and the execution strategy doesn't support it + if this instance was already used to execute an operation + + + + Determines whether the operation should be retried and the delay before the next attempt. + + The exception thrown during the last execution attempt. + + Returns the delay indicating how long to wait for before the next execution attempt if the operation should be retried; + null otherwise + + + + + Recursively gets InnerException from as long as it's an + , or + and passes it to + + The type of the unwrapped exception. + The exception to be unwrapped. + A delegate that will be called with the unwrapped exception. + + The result from . + + + + + Determines whether the specified exception represents a transient failure that can be compensated by a retry. + + The exception object to be verified. + + true if the specified exception is considered as transient, otherwise false. + + + + + Returns true to indicate that might retry the execution after a failure. + + + + + A key used for resolving . It consists of the ADO.NET provider invariant name + and the database server name as specified in the connection string. + + + + + Initializes a new instance of + + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this execution strategy will be used. + + A string that will be matched against the server name in the connection string. + + + + + + + + + + The ADO.NET provider invariant name indicating the type of ADO.NET connection for which this execution strategy will be used. + + + + + A string that will be matched against the server name in the connection string. + + + + + Implement this interface on your context to use custom logic to calculate the key used to lookup an already created model in the cache. + This interface allows you to have a single context type that can be used with different models in the same AppDomain, + or multiple context types that use the same model. + + + + Gets the cached key associated with the provider. + The cached key associated with the provider. + + + + Used by and when resolving + a provider invariant name from a . + + + + Gets the name of the provider. + The name of the provider. + + + + Represents a custom pluralization term to be used by the + + + + + Create a new instance + + A non null or empty string representing the singular. + A non null or empty string representing the plural. + + + + Get the singular. + + + + + Get the plural. + + + + + Default pluralization service implementation to be used by Entity Framework. This pluralization + service is based on English locale. + + + + + Pluralization services to be used by the EF runtime implement this interface. + By default the is used, but the pluralization service to use + can be set in a class derived from . + + + + + Pluralize a word using the service. + + The word to pluralize. + The pluralized word + + + + Singularize a word using the service. + + The word to singularize. + The singularized word. + + + + Constructs a new instance of default pluralization service + used in Entity Framework. + + + + + Constructs a new instance of default pluralization service + used in Entity Framework. + + + A collection of user dictionary entries to be used by this service.These inputs + can customize the service according the user needs. + + + + Returns the plural form of the specified word. + The plural form of the input parameter. + The word to be made plural. + + + Returns the singular form of the specified word. + The singular form of the input parameter. + The word to be made singular. + + + + The exception that is thrown when the action failed again after being retried the configured number of times. + + + + + Provider exception - Used by the entity client. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message that describes the error. + + + + Initializes a new instance of the class. + + The error message that explains the reason for the exception. + The exception that caused the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class. + + + The that holds the serialized object data about the exception being thrown. + + + The that contains contextual information about the source or destination. + + + + + Initializes a new instance of the class with no error message. + + + + + Initializes a new instance of the class with a specified error message. + + The message that describes the error. + + + + Initializes a new instance of the class. + + The message that describes the error. + The exception that is the cause of the current exception. + + + + An that doesn't retry operations if they fail. + + + + + Executes the specified operation once. + + A delegate representing an executable operation that doesn't return any results. + + + + Executes the specified operation once and returns the result. + + + The return type of . + + + A delegate representing an executable operation that returns the result of type . + + The result from the operation. + + + + Executes the specified asynchronous operation once, without retrying on failure. + + A function that returns a started task. + + A cancellation token used to cancel the retry operation, but not operations that are already in flight + or that already completed successfully. + + + A task that will run to completion if the original task completes successfully. + + + + + Executes the specified asynchronous operation once, without retrying on failure. + + + The result type of the returned by . + + A function that returns a started task. + + A cancellation token used to cancel the retry operation, but not operations that are already in flight + or that already completed successfully. + + + A task that will run to completion if the original task completes successfully. + + + + + Returns false to indicate that will not retry the execution after a failure. + + + + + Asynchronous version of the interface that allows elements to be retrieved asynchronously. + This interface is used to interact with Entity Framework queries and shouldn't be implemented by custom classes. + + + + + Gets an enumerator that can be used to asynchronously enumerate the sequence. + + Enumerator for asynchronous enumeration over the sequence. + + + + Asynchronous version of the interface that allows elements of the enumerable sequence to be retrieved asynchronously. + This interface is used to interact with Entity Framework queries and shouldn't be implemented by custom classes. + + The type of objects to enumerate. + + + + Gets an enumerator that can be used to asynchronously enumerate the sequence. + + Enumerator for asynchronous enumeration over the sequence. + + + + Represents a SQL query for entities that is created from a + and is executed using the connection from that context. + Instances of this class are obtained from the instance for the + entity type. The query is not executed when this object is created; it is executed + each time it is enumerated, for example by using foreach. + SQL queries for non-entities are created using . + See for a generic version of this class. + + + + + Represents a SQL query for non-entities that is created from a + and is executed using the connection from that context. + Instances of this class are obtained from the instance. + The query is not executed when this object is created; it is executed + each time it is enumerated, for example by using foreach. + SQL queries for entities are created using . + See for a generic version of this class. + + + + + Returns a new query that will stream the results instead of buffering. + + A new query with AsStreaming applied. + + + + Returns an which when enumerated will execute the SQL query against the database. + + + An object that can be used to iterate through the elements. + + + + + Returns an which when enumerated will execute the SQL query against the database. + + + An object that can be used to iterate through the elements. + + + + + Asynchronously enumerates the query results and performs the specified action on each element. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The action to perform on each element. + A task that represents the asynchronous operation. + + + + Asynchronously enumerates the query results and performs the specified action on each element. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The action to perform on each element. + + A to observe while waiting for the task to complete. + + A task that represents the asynchronous operation. + + + + Creates a from the query by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains a that contains elements from the query. + + + + + Creates a from the query by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains elements from the query. + + + + + Returns a that contains the SQL string that was set + when the query was created. The parameters are not included. + + + A that represents this instance. + + + + + Throws an exception indicating that binding directly to a store query is not supported. + + Never returns; always throws. + + + + + + + + + + + + + Returns false. + + + false . + + + + + Creates an instance of a when called from the constructor of a derived + type that will be used as a test double for . Methods and properties + that will be used by the test double must be implemented by the test double except AsNoTracking + and AsStreaming where the default implementation is a no-op. + + + + + Returns a new query where the results of the query will not be tracked by the associated + . + + A new query with NoTracking applied. + + + + Returns a new query that will stream the results instead of buffering. + + A new query with AsStreaming applied. + + + + + + + + + + + + + + + + Represents a SQL query for entities that is created from a + and is executed using the connection from that context. + Instances of this class are obtained from the instance for the + entity type. The query is not executed when this object is created; it is executed + each time it is enumerated, for example by using foreach. + SQL queries for non-entities are created using . + See for a non-generic version of this class. + + The type of entities returned by the query. + + + + Represents a SQL query for non-entities that is created from a + and is executed using the connection from that context. + Instances of this class are obtained from the instance. + The query is not executed when this object is created; it is executed + each time it is enumerated, for example by using foreach. + SQL queries for entities are created using . + See for a non-generic version of this class. + + The type of elements returned by the query. + + + + Returns a new query that will stream the results instead of buffering. + + A new query with AsStreaming applied. + + + + Returns an which when enumerated will execute the SQL query against the database. + + + An object that can be used to iterate through the elements. + + + + + Returns an which when enumerated will execute the SQL query against the database. + + + An object that can be used to iterate through the elements. + + + + + Returns an which when enumerated will execute the SQL query against the database. + + + An object that can be used to iterate through the elements. + + + + + Returns an which when enumerated will execute the SQL query against the database. + + + An object that can be used to iterate through the elements. + + + + + Asynchronously enumerates the query results and performs the specified action on each element. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The action to be executed. + A task that represents the asynchronous operation. + + + + Asynchronously enumerates the query results and performs the specified action on each element. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The action to be executed. + + A to observe while waiting for the task to complete. + + A task that represents the asynchronous operation. + + + + Creates a from the query by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains a that contains elements from the input sequence. + + + + + Creates a from the query by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains elements from the input sequence. + + + + + Creates an array from the query by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains an array that contains elements from the input sequence. + + + + + Creates an array from the query by enumerating it asynchronously. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains an array that contains elements from the input sequence. + + + + + Creates a from the query by enumerating it asynchronously + according to a specified key selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the key returned by . + + A function to extract a key from each element. + + A task that represents the asynchronous operation. + The task result contains a that contains selected keys and values. + + + + + Creates a from the query by enumerating it asynchronously + according to a specified key selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the key returned by . + + A function to extract a key from each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains selected keys and values. + + + + + Creates a from the query by enumerating it asynchronously + according to a specified key selector function and a comparer. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the key returned by . + + A function to extract a key from each element. + + An to compare keys. + + + A task that represents the asynchronous operation. + The task result contains a that contains selected keys and values. + + + + + Creates a from the query by enumerating it asynchronously + according to a specified key selector function and a comparer. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the key returned by . + + A function to extract a key from each element. + + An to compare keys. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains selected keys and values. + + + + + Creates a from the query by enumerating it asynchronously + according to a specified key selector and an element selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the key returned by . + + + The type of the value returned by . + + A function to extract a key from each element. + A transform function to produce a result element value from each element. + + A task that represents the asynchronous operation. + The task result contains a that contains values of type + selected from the query. + + + + + Creates a from the query by enumerating it asynchronously + according to a specified key selector and an element selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the key returned by . + + + The type of the value returned by . + + A function to extract a key from each element. + A transform function to produce a result element value from each element. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains values of type + selected from the query. + + + + + Creates a from the query by enumerating it asynchronously + according to a specified key selector function, a comparer, and an element selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the key returned by . + + + The type of the value returned by . + + A function to extract a key from each element. + A transform function to produce a result element value from each element. + + An to compare keys. + + + A task that represents the asynchronous operation. + The task result contains a that contains values of type + selected from the input sequence. + + + + + Creates a from the query by enumerating it asynchronously + according to a specified key selector function, a comparer, and an element selector function. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The type of the key returned by . + + + The type of the value returned by . + + A function to extract a key from each element. + A transform function to produce a result element value from each element. + + An to compare keys. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains a that contains values of type + selected from the input sequence. + + + + + Asynchronously returns the first element of the query. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains the first element in the query result. + + The query result is empty. + + + + Asynchronously returns the first element of the query. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the first element in the query result. + + The query result is empty. + + + + Asynchronously returns the first element of the query that satisfies a specified condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains the first element in the query result that satisfies a specified condition. + + + + is + null + . + + The query result is empty. + + + + Asynchronously returns the first element of the query that satisfies a specified condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the first element in the query result that satisfies a specified condition. + + + + is + null + . + + The query result is empty. + + + + Asynchronously returns the first element of the query, or a default value if the the query result contains no elements. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains default ( ) if query result is empty; + otherwise, the first element in the query result. + + + + + Asynchronously returns the first element of the query, or a default value if the the query result contains no elements. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains default ( ) if query result is empty; + otherwise, the first element in the query result. + + + + + Asynchronously returns the first element of the query that satisfies a specified condition + or a default value if no such element is found. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains default ( ) if query result is empty + or if no element passes the test specified by ; otherwise, the first element + in the query result that passes the test specified by . + + + + is + null + . + + + + + Asynchronously returns the first element of the query that satisfies a specified condition + or a default value if no such element is found. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains default ( ) if query result is empty + or if no element passes the test specified by ; otherwise, the first element + in the query result that passes the test specified by . + + + + is + null + . + + + + + Asynchronously returns the only element of the query, and throws an exception + if there is not exactly one element in the sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains the single element of the query result. + + The query result has more than one element. + The query result is empty. + + + + Asynchronously returns the only element of the query, and throws an exception + if there is not exactly one element in the sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the single element of the query result. + + The query result has more than one element. + The query result is empty. + + + + Asynchronously returns the only element of the query that satisfies a specified condition, + and throws an exception if more than one such element exists. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains the single element of the query result that satisfies the condition in + . + + + + is + null + . + + + No element satisfies the condition in + + . + + + More than one element satisfies the condition in + + . + + + + + Asynchronously returns the only element of the query that satisfies a specified condition, + and throws an exception if more than one such element exists. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the single element of the query result that satisfies the condition in + . + + + + is + null + . + + + No element satisfies the condition in + + . + + + More than one element satisfies the condition in + + . + + + + + Asynchronously returns the only element of a sequence, or a default value if the sequence is empty; + this method throws an exception if there is more than one element in the sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains the single element of the query result, or default () + if the sequence contains no elements. + + The query result has more than one element. + + + + Asynchronously returns the only element of a sequence, or a default value if the sequence is empty; + this method throws an exception if there is more than one element in the sequence. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the single element of the query result, or default () + if the sequence contains no elements. + + The query result has more than one element. + + + + Asynchronously returns the only element of the query that satisfies a specified condition or + a default value if no such element exists; this method throws an exception if more than one element + satisfies the condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains the single element of the query result that satisfies the condition in + , or default ( ) if no such element is found. + + + + is + null + . + + + More than one element satisfies the condition in + + . + + + + + Asynchronously returns the only element of the query that satisfies a specified condition or + a default value if no such element exists; this method throws an exception if more than one element + satisfies the condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the single element of the query result that satisfies the condition in + , or default ( ) if no such element is found. + + + + is + null + . + + + More than one element satisfies the condition in + + . + + + + + Asynchronously determines whether the query contains a specified element by using the default equality comparer. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The object to locate in the query result. + + A task that represents the asynchronous operation. + The task result contains true if the query result contains the specified value; otherwise, false. + + + + + Asynchronously determines whether the query contains a specified element by using the default equality comparer. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The object to locate in the query result. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if the query result contains the specified value; otherwise, false. + + + + + Asynchronously determines whether the query contains any elements. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains true if the query result contains any elements; otherwise, false. + + + + + Asynchronously determines whether the query contains any elements. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if the query result contains any elements; otherwise, false. + + + + + Asynchronously determines whether any element of the query satisfies a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains true if any elements in the query result pass the test in the specified predicate; otherwise, false. + + + + + Asynchronously determines whether any element of the query satisfies a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if any elements in the query result pass the test in the specified predicate; otherwise, false. + + + + + Asynchronously determines whether all the elements of the query satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains true if every element of the query result passes the test in the specified predicate; otherwise, false. + + + + is + null + . + + + + + Asynchronously determines whether all the elements of the query satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if every element of the query result passes the test in the specified predicate; otherwise, false. + + + + is + null + . + + + + + Asynchronously returns the number of elements in the query. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the query result. + + + The number of elements in the query result is larger than + + . + + + + + Asynchronously returns the number of elements in the query. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the query result. + + + The number of elements in the query result is larger than + + . + + + + + Asynchronously returns the number of elements in the query that satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains the number of elements in the query result that satisfy the condition in the predicate function. + + + The number of elements in the query result that satisfy the condition in the predicate function + is larger than + + . + + + + + Asynchronously returns the number of elements in the query that satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the query result that satisfy the condition in the predicate function. + + + The number of elements in the query result that satisfy the condition in the predicate function + is larger than + + . + + + + + Asynchronously returns an that represents the total number of elements in the query. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the query result. + + + The number of elements in the query result is larger than + + . + + + + + Asynchronously returns an that represents the total number of elements in the query. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the query result. + + + The number of elements in the query result is larger than + + . + + + + + Asynchronously returns an that represents the number of elements in the query + that satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A task that represents the asynchronous operation. + The task result contains the number of elements in the query result that satisfy the condition in the predicate function. + + + The number of elements in the query result that satisfy the condition in the predicate function + is larger than + + . + + + + + Asynchronously returns an that represents the number of elements in the query + that satisfy a condition. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + A function to test each element for a condition. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the number of elements in the query result that satisfy the condition in the predicate function. + + + The number of elements in the query result that satisfy the condition in the predicate function + is larger than + + . + + + + + Asynchronously returns the minimum value of the query. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains the minimum value in the query result. + + + + + Asynchronously returns the minimum value of the query. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the minimum value in the query result. + + + + + Asynchronously returns the maximum value of the query. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains the maximum value in the query result. + + + + + Asynchronously returns the maximum value of the query. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the maximum value in the query result. + + + + + Returns a that contains the SQL string that was set + when the query was created. The parameters are not included. + + + A that represents this instance. + + + + + Throws an exception indicating that binding directly to a store query is not supported. + + Never returns; always throws. + + + + + + + + + + + + + Returns false. + + + false . + + + + + Creates an instance of a when called from the constructor of a derived + type that will be used as a test double for . Methods and properties + that will be used by the test double must be implemented by the test double except AsNoTracking and + AsStreaming where the default implementation is a no-op. + + + + + Returns a new query where the entities returned will not be cached in the . + + A new query with NoTracking applied. + + + + Returns a new query that will stream the results instead of buffering. + + A new query with AsStreaming applied. + + + + + + + + + + + + + + + + Asynchronous version of the interface that allows elements to be retrieved asynchronously. + This interface is used to interact with Entity Framework queries and shouldn't be implemented by custom classes. + + + + + Advances the enumerator to the next element in the sequence, returning the result asynchronously. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the sequence. + + + + + Gets the current element in the iteration. + + + + + Defines methods to create and asynchronously execute queries that are described by an + object. + This interface is used to interact with Entity Framework queries and shouldn't be implemented by custom classes. + + + + + Asynchronously executes the query represented by a specified expression tree. + + An expression tree that represents a LINQ query. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the value that results from executing the specified query. + + + + + Asynchronously executes the strongly-typed query represented by a specified expression tree. + + The type of the value that results from executing the query. + An expression tree that represents a LINQ query. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the value that results from executing the specified query. + + + + + Asynchronous version of the interface that allows elements to be retrieved asynchronously. + This interface is used to interact with Entity Framework queries and shouldn't be implemented by custom classes. + + The type of objects to enumerate. + + + + Gets the current element in the iteration. + + + + + Represents a key value that uniquely identifies an Entity Framework model that has been loaded into memory. + + + + Determines whether the current cached model key is equal to the specified cached model key. + true if the current cached model key is equal to the specified cached model key; otherwise, false. + The cached model key to compare to the current cached model key. + + + Returns the hash function for this cached model key. + The hash function for this cached model key. + + + + Thrown when an operation can't be performed because there are existing migrations that have not been applied to the database. + + + + + Represents errors that occur inside the Code First Migrations pipeline. + + + + + Initializes a new instance of the MigrationsException class. + + + + + Initializes a new instance of the MigrationsException class. + + The message that describes the error. + + + + Initializes a new instance of the MigrationsException class. + + The message that describes the error. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the MigrationsException class with serialized data. + + + The that holds the serialized object data about the exception being thrown. + + + The that contains contextual information about the source or destination. + + + + + Initializes a new instance of the MigrationsPendingException class. + + + + + Initializes a new instance of the MigrationsPendingException class. + + The message that describes the error. + + + + Initializes a new instance of the MigrationsPendingException class. + + The message that describes the error. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + A migration operation to add a new stored procedure to the database. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the stored procedure. + The body of the stored procedure expressed in SQL. + Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets an operation to drop the stored procedure. + + + + + Allows configuration to be performed for a lightweight convention based on + the properties in a model. + + + + + Filters the properties that this convention applies to based on a predicate. + + A function to test each property for a condition. + + A instance so that multiple calls can be chained. + + + + + Filters the properties that this convention applies to based on a predicate + while capturing a value to use later during configuration. + + Type of the captured value. + + A function to capture a value for each property. If the value is null, the + property will be filtered out. + + + A instance so that multiple calls can be chained. + + + + + Allows configuration of the properties that this convention applies to. + + + An action that performs configuration against a + + . + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Allows configuration to be performed for a lightweight convention based on + the properties of entity types in a model and a captured value. + + The type of the captured value. + + + + Allows configuration of the properties that this convention applies to. + + + An action that performs configuration against a + using a captured value. + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Allows configuration to be performed for a stored procedure that is used to modify a relationship. + + The type of the entity that the relationship is being configured from. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + The type of the property. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + The type of the property. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + + Creates a convention that configures stored procedures to be used to delete entities in the database. + + + + + Creates a convention that configures stored procedures to be used to modify entities in the database. + + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + The schema name. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + The name of the property to configure the parameter for. + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + The property to configure the parameter for. + The name of the parameter. + + + Configures the output parameter that returns the rows affected by this stored procedure. + The same configuration instance so that multiple calls can be chained. + The name of the parameter. + + + + + + + + + + + + + + + + Creates a convention that configures stored procedures to be used to insert entities in the database. + + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + The schema name. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + The name of the property to configure the parameter for. + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + The property to configure the parameter for. + The name of the parameter. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + The name of the property to configure the result for. + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + The property to configure the result for. + The name of the result column. + + + + + + + + + + + + + + + + Creates a convention that configures stored procedures to be used to modify entities in the database. + + + + Configures stored procedure used to insert entities. + The same configuration instance so that multiple calls can be chained. + A lambda expression that performs configuration for the stored procedure. + + + Configures stored procedure used to update entities. + The same configuration instance so that multiple calls can be chained. + A lambda expression that performs configuration for the stored procedure. + + + Configures stored procedure used to delete entities. + The same configuration instance so that multiple calls can be chained. + A lambda expression that performs configuration for the stored procedure. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Creates a convention that configures stored procedures to be used to update entities in the database. + + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + The schema name. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + The name of the property to configure the parameter for. + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + The property to configure the parameter for. + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + The name of the property to configure the parameter for. + The current value parameter name. + The original value parameter name. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + The property to configure the parameter for. + The current value parameter name. + The original value parameter name. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + The name of the property to configure the result for. + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + The property to configure the result for. + The name of the result column. + + + Configures the output parameter that returns the rows affected by this stored procedure. + The same configuration instance so that multiple calls can be chained. + The name of the parameter. + + + + + + + + + + + + + + + + Allows configuration to be performed for a stored procedure that is used to modify a many to many relationship. + + The type of the entity that the relationship is being configured from. + The type of the entity that the other end of the relationship targets. + + + + Performs configuration of a stored procedure uses to modify an entity in the database. + + + + + Sets the name of the stored procedure. + + Name of the procedure. + The same configuration instance so that multiple calls can be chained. + + + + Sets the name of the stored procedure. + + Name of the procedure. + Name of the schema. + The same configuration instance so that multiple calls can be chained. + + + + Configures the parameter for the left key value(s). + + The type of the property to configure. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + Name of the parameter. + The same configuration instance so that multiple calls can be chained. + + + + Configures the parameter for the left key value(s). + + The type of the property to configure. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + Name of the parameter. + The same configuration instance so that multiple calls can be chained. + + + + Configures the parameter for the left key value(s). + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + Name of the parameter. + The same configuration instance so that multiple calls can be chained. + + + + Configures the parameter for the left key value(s). + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + Name of the parameter. + The same configuration instance so that multiple calls can be chained. + + + + Configures the parameter for the right key value(s). + + The type of the property to configure. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + Name of the parameter. + The same configuration instance so that multiple calls can be chained. + + + + Configures the parameter for the right key value(s). + + The type of the property to configure. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + Name of the parameter. + The same configuration instance so that multiple calls can be chained. + + + + Configures the parameter for the right key value(s). + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + Name of the parameter. + The same configuration instance so that multiple calls can be chained. + + + + Configures the parameter for the right key value(s). + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + Name of the parameter. + The same configuration instance so that multiple calls can be chained. + + + + + + + + + + + + + + + + Allows configuration to be performed for a stored procedure that is used to modify a many to many relationship. + + The type of the entity that the relationship is being configured from. + The type of the entity that the other end of the relationship targets. + + + Configures stored procedure used to insert relationships. + The same configuration instance so that multiple calls can be chained. + A lambda expression that performs configuration for the stored procedure. + + + Configures stored procedure used to delete relationships. + The same configuration instance so that multiple calls can be chained. + A lambda expression that performs configuration for the stored procedure. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Allows configuration to be performed for a stored procedure that is used to delete entities. + + The type of the entity that the stored procedure can be used to delete. + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + The schema name. + + + Configures a parameter for this stored procedure. + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures the output parameter that returns the rows affected by this stored procedure. + The same configuration instance so that multiple calls can be chained. + The name of the parameter. + + + Configures parameters for a relationship where the foreign key property is not included in the class. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the navigation property for the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A lambda expression that performs the configuration. + The type of the principal entity in the relationship. + + + Configures parameters for a relationship where the foreign key property is not included in the class. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the navigation property for the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A lambda expression that performs the configuration. + The type of the principal entity in the relationship. + + + + + + + + + + + + + + + + Allows configuration to be performed for a stored procedure that is used to insert entities. + + The type of the entity that the stored procedure can be used to insert. + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + The schema name. + + + Configures a parameter for this stored procedure. + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + Configures parameters for a relationship where the foreign key property is not included in the class. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the navigation property for the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A lambda expression that performs the configuration. + The type of the principal entity in the relationship. + + + Configures parameters for a relationship where the foreign key property is not included in the class. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the navigation property for the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A lambda expression that performs the configuration. + The type of the principal entity in the relationship. + + + + + + + + + + + + + + + + Allows configuration to be performed for a stored procedure that is used to update entities. + + The type of the entity that the stored procedure can be used to update. + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + + + Configures the name of the stored procedure. + The same configuration instance so that multiple calls can be chained. + The stored procedure name. + The schema name. + + + Configures a parameter for this stored procedure. + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the parameter. + + + Configures a parameter for this stored procedure. + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The current value parameter name. + The original value parameter name. + + + Configures a parameter for this stored procedure. + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The current value parameter name. + The original value parameter name. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The current value parameter name. + The original value parameter name. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The current value parameter name. + The original value parameter name. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The current value parameter name. + The original value parameter name. + + + Configures a parameter for this stored procedure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the parameter for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The current value parameter name. + The original value parameter name. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The type of the property to configure. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + + Configures a column of the result for this stored procedure to map to a property. + This is used for database generated columns. + + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the property to configure the result for. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The name of the result column. + + + Configures the output parameter that returns the rows affected by this stored procedure. + The same configuration instance so that multiple calls can be chained. + The name of the parameter. + + + Configures parameters for a relationship where the foreign key property is not included in the class. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the navigation property for the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A lambda expression that performs the configuration. + The type of the principal entity in the relationship. + + + Configures parameters for a relationship where the foreign key property is not included in the class. + The same configuration instance so that multiple calls can be chained. + A lambda expression representing the navigation property for the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A lambda expression that performs the configuration. + The type of the principal entity in the relationship. + + + + + + + + + + + + + + + + Allows configuration to be performed for a stored procedure that is used to modify entities. + + The type of the entity that the stored procedure can be used to modify. + + + Configures stored procedure used to insert entities. + The same configuration instance so that multiple calls can be chained. + A lambda expression that performs configuration for the stored procedure. + + + Configures stored procedure used to update entities. + The same configuration instance so that multiple calls can be chained. + A lambda expression that performs configuration for the stored procedure. + + + Configures stored procedure used to delete entities. + The same configuration instance so that multiple calls can be chained. + A lambda expression that performs configuration for the stored procedure. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Used to configure a primitive property of an entity type or complex type. + This configuration functionality is available via lightweight conventions. + + + + + Configures the name of the database column used to store the property. + + The name of the column. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Sets an annotation in the model for the database column used to store the property. The annotation + value can later be used when processing the column such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Calling this method will have no effect if the + annotation with the given name has already been configured. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same configuration instance so that multiple calls can be chained. + + + + Configures the name of the parameter used in stored procedures for this property. + + Name of the parameter. + + The same instance so that multiple calls can be chained. + + + + + Configures the order of the database column used to store the property. + This method is also used to specify key ordering when an entity type has a composite key. + + The order that this column should appear in the database table. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Configures the data type of the database column used to store the property. + + Name of the database provider specific data type. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Configures the property to be used as an optimistic concurrency token. + + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Configures whether or not the property is to be used as an optimistic concurrency token. + + Value indicating if the property is a concurrency token or not. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Configures how values for the property are generated by the database. + + The pattern used to generate values for the property in the database. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Configures the property to be optional. + The database column used to store this property will be nullable. + + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Configures the property to be required. + The database column used to store this property will be non-nullable. + + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + + + + + Configures the property to support Unicode string content. + + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + This method throws if the property is not a . + + + + + Configures whether or not the property supports Unicode string content. + + Value indicating if the property supports Unicode string content or not. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + This method throws if the property is not a . + + + + + Configures the property to be fixed length. + Use HasMaxLength to set the length that the property is fixed to. + + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + This method throws if the property does not have length facets. + + + + + Configures the property to be variable length. + Properties are variable length by default. + + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + This method throws if the property does not have length facets. + + + + + Configures the property to have the specified maximum length. + + The maximum length for the property. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + This method throws if the property does not have length facets. + + + + + Configures the property to allow the maximum length supported by the database provider. + + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + This method throws if the property does not have length facets. + + + + + Configures the precision of the property. + If the database provider does not support precision for the data type of the column then the value is ignored. + + Precision of the property. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + This method will throw if the property is not a . + + + + + Configures the precision and scale of the property. + + The precision of the property. + The scale of the property. + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + This method will throw if the property is not a . + + + + + Configures the property to be a row version in the database. + The actual data type will vary depending on the database provider being used. + Setting the property to be a row version will automatically configure it to be an + optimistic concurrency token. + + + The same instance so that multiple calls can be chained. + + + Calling this will have no effect once it has been configured. + This method throws if the property is not a . + + + + + Configures this property to be part of the entity type's primary key. + + + The same instance so that + multiple calls can be chained. + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Gets the for this property. + + + + + An implementation of that does nothing. Using this + initializer disables database initialization for the given context type. Passing an instance + of this class to is equivalent to passing null. + When is being used to resolve initializers an instance of + this class must be used to disable initialization. + + The type of the context. + + + + + + + FieldMetadata class providing the correlation between the column ordinals and MemberMetadata. + + + + + Initializes a new object with the specified ordinal value and field type. + + An integer specified the location of the metadata. + The field type. + + + + Gets the type of field for this object. + + + The type of field for this object. + + + + + Gets the ordinal for this object. + + An integer representing the ordinal value. + + + + Class representing a parameter collection used in EntityCommand + + + + + Adds the specified object to the . + + + The index of the new object. + + + An . + + + + + Adds an array of values to the end of the + + . + + + The values to add. + + + + + Removes all the objects from the + + . + + + + + Determines whether the specified is in this + + . + + + true if the contains the value; otherwise false. + + + The value. + + + + + Copies all the elements of the current to the specified one-dimensional + + starting at the specified destination index. + + + The one-dimensional that is the destination of the elements copied from the current + + . + + + A 32-bit integer that represents the index in the at which copying starts. + + + + + Returns an enumerator that iterates through the + + . + + + An for the + + . + + + + + + + + + + + Gets the location of the specified with the specified name. + + + The zero-based location of the specified with the specified case-sensitive name. Returns -1 when the object does not exist in the + + . + + + The case-sensitive name of the to find. + + + + + Gets the location of the specified in the collection. + + + The zero-based location of the specified that is a + + in the collection. Returns -1 when the object does not exist in the + + . + + + The to find. + + + + + Inserts an into the + + at the specified index. + + The zero-based index at which value should be inserted. + + An to be inserted in the + + . + + + + Removes the specified parameter from the collection. + + A object to remove from the collection. + + + + + Removes the from the + + at the specified index. + + + The zero-based index of the object to remove. + + + + + Removes the from the + + at the specified parameter name. + + + The name of the to remove. + + + + + + + + + + + Adds the specified object to the + + . + + + A new object. + + + The to add to the collection. + + + The specified in the value parameter is already added to this or another + + . + + + The parameter passed was not a . + + The value parameter is null. + + + + Adds a value to the end of the . + + + A object. + + The name of the parameter. + The value to be added. + + + + Adds a to the + + given the parameter name and the data type. + + + A new object. + + The name of the parameter. + + One of the values. + + + + + Adds a to the + + with the parameter name, the data type, and the column length. + + + A new object. + + The name of the parameter. + + One of the values. + + The column length. + + + + Adds an array of values to the end of the + + . + + + The values to add. + + + + + Determines whether the specified is in this + + . + + + true if the contains the value; otherwise false. + + + The value. + + + + + Copies all the elements of the current to the specified + + starting at the specified destination index. + + + The that is the destination of the elements copied from the current + + . + + + A 32-bit integer that represents the index in the + + at which copying starts. + + + + + Gets the location of the specified in the collection. + + + The zero-based location of the specified that is a + + in the collection. Returns -1 when the object does not exist in the + + . + + + The to find. + + + + + Inserts a object into the + + at the specified index. + + The zero-based index at which value should be inserted. + + A object to be inserted in the + + . + + + + + Removes the specified from the collection. + + + A object to remove from the collection. + + + The parameter is not a . + + The parameter does not exist in the collection. + + + + Gets an Integer that contains the number of elements in the + + . + + + The number of elements in the as an Integer. + + + + + Gets a value that indicates whether the + + has a fixed size. + + + Returns true if the has a fixed size; otherwise false. + + + + + Gets a value that indicates whether the + + is read-only. + + + Returns true if the is read only; otherwise false. + + + + + Gets a value that indicates whether the + + is synchronized. + + + Returns true if the is synchronized; otherwise false. + + + + + Gets an object that can be used to synchronize access to the + + . + + + An object that can be used to synchronize access to the + + . + + + + + Gets the at the specified index. + + + The at the specified index. + + The zero-based index of the parameter to retrieve. + The specified index does not exist. + + + + Gets the with the specified name. + + + The with the specified name. + + The name of the parameter to retrieve. + The specified name does not exist. + + + + Class representing a command for the conceptual layer + + + + + Initializes a new instance of the class using the specified values. + + + + + Initializes a new instance of the class with the specified statement. + + The text of the command. + + + + Constructs the EntityCommand object with the given eSQL statement and the connection object to use + + The eSQL command text to execute + The connection object + Resolver used to resolve DbProviderServices + + + + Initializes a new instance of the class with the specified statement and connection. + + The text of the command. + A connection to the data source. + + + + Initializes a new instance of the class with the specified statement, connection and transaction. + + The text of the command. + A connection to the data source. + The transaction in which the command executes. + + + + Cancels the execution of an . + + + + + Creates a new instance of an object. + + + A new instance of an object. + + + + + Create and return a new parameter object representing a parameter in the eSQL statement + + The parameter object. + + + Executes the command and returns a data reader. + + The that contains the results. + + + + + Compiles the into a command tree and passes it to the underlying store provider for execution, then builds an + + out of the produced result set using the specified + + . + + + The that contains the results. + + + One of the values. + + + + + Asynchronously executes the command and returns a data reader for reading the results. May only + be called on CommandType.CommandText (otherwise, use the standard Execute* methods) + + + A task that represents the asynchronous operation. + The task result contains an EntityDataReader object. + + + For stored procedure commands, if called + for anything but an entity collection result + + + + + Asynchronously executes the command and returns a data reader for reading the results. May only + be called on CommandType.CommandText (otherwise, use the standard Execute* methods) + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains an EntityDataReader object. + + + For stored procedure commands, if called + for anything but an entity collection result + + + + + Asynchronously executes the command and returns a data reader for reading the results. May only + be called on CommandType.CommandText (otherwise, use the standard Execute* methods) + + The behavior to use when executing the command + + A task that represents the asynchronous operation. + The task result contains an EntityDataReader object. + + + For stored procedure commands, if called + for anything but an entity collection result + + + + + Asynchronously executes the command and returns a data reader for reading the results. May only + be called on CommandType.CommandText (otherwise, use the standard Execute* methods) + + The behavior to use when executing the command + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains an EntityDataReader object. + + + For stored procedure commands, if called + for anything but an entity collection result + + + + + Executes the command and returns a data reader for reading the results + + The behavior to use when executing the command + A DbDataReader object + + + + Asynchronously executes the command and returns a data reader for reading the results + + The behavior to use when executing the command + The token to monitor for cancellation requests + + A task that represents the asynchronous operation. + The task result contains a DbDataReader object. + + + + Executes the current command. + The number of rows affected. + + + + Asynchronously executes the command and discard any results returned from the command + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the number of rows affected. + + + + Executes the command, and returns the first column of the first row in the result set. Additional columns or rows are ignored. + The first column of the first row in the result set, or a null reference (Nothing in Visual Basic) if the result set is empty. + + + Compiles the entity-level command and creates a prepared version of the command. + + + Compiles the entity-level command and returns the store command text. + The store command text. + + + + Gets or sets the used by the + + . + + The connection used by the entity command. + + + + The connection object used for executing the command + + + + Gets or sets an Entity SQL statement that specifies a command or stored procedure to execute. + The Entity SQL statement that specifies a command or stored procedure to execute. + + + Gets or sets the command tree to execute; only one of the command tree or the command text can be set, not both. + The command tree to execute. + + + Gets or sets the amount of time to wait before timing out. + The time in seconds to wait for the command to execute. + + + + Gets or sets a value that indicates how the + + property is to be interpreted. + + + One of the enumeration values. + + + + Gets the parameters of the Entity SQL statement or stored procedure. + The parameters of the Entity SQL statement or stored procedure. + + + + The collection of parameters for this command + + + + + Gets or sets the transaction within which the executes. + + + The transaction within which the executes. + + + + + The transaction that this command executes in + + + + Gets or sets how command results are applied to rows being updated. + + One of the values. + + + + Gets or sets a value that indicates whether the command object should be visible in a Windows Form Designer control. + true if the command object should be visible in a Windows Form Designer control; otherwise, false. + + + Gets or sets a value that indicates whether the query plan caching is enabled. + true if the query plan caching is enabled; otherwise, false. + + + + Class representing a connection for the conceptual layer. An entity connection may only + be initialized once (by opening the connection). It is subsequently not possible to change + the connection string, attach a new store connection, or change the store connection string. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class, based on the connection string. + + The provider-specific connection string. + An invalid connection string keyword has been provided, or a required connection string keyword has not been provided. + + + + Initializes a new instance of the class with a specified + and + . + + + A to be associated with this + . + + + The underlying data source connection for this object. + + The workspace or connection parameter is null. + The conceptual model is missing from the workspace.-or-The mapping file is missing from the workspace.-or-The storage model is missing from the workspace.-or-The connection is not in a closed state. + The connection is not from an ADO.NET Entity Framework-compatible provider. + + + + Constructs the EntityConnection from Metadata loaded in memory + + Workspace containing metadata information. + Store connection. + If set to true the store connection is disposed when the entity connection is disposed, otherwise the caller must dispose the store connection. + + + + Returns the associated with this + + . + + + The associated with this + + . + + The inline connection string contains an invalid Metadata keyword value. + + + Establishes a connection to the data source by calling the underlying data provider's Open method. + An error occurs when you open the connection, or the name of the underlying data provider is not known. + The inline connection string contains an invalid Metadata keyword value. + + + + Asynchronously establishes a connection to the data store by calling the Open method on the underlying data provider + + + A to observe while waiting for the task to complete. + + A task that represents the asynchronous operation. + + + + Creates a new instance of an , with the + + set to this + + . + + + An object. + + The name of the underlying data provider is not known. + + + + Create a new command object that uses this connection object + + The command object. + + + Closes the connection to the database. + An error occurred when closing the connection. + + + Not supported. + Not supported. + When the method is called. + + + Begins a transaction by using the underlying provider. + + A new . The returned + + instance can later be associated with the + + to execute the command under that transaction. + + + The underlying provider is not known.-or-The call to + + was made on an + + that already has a current transaction.-or-The state of the + + is not + + . + + + + Begins a transaction with the specified isolation level by using the underlying provider. + + A new . The returned + + instance can later be associated with the + + to execute the command under that transaction. + + The isolation level of the transaction. + + The underlying provider is not known.-or-The call to + + was made on an + + that already has a current transaction.-or-The state of the + + is not + + . + + + + + Begins a database transaction + + The isolation level of the transaction + An object representing the new transaction + + + + Enlists this in the specified transaction. + + The transaction object to enlist into. + + The state of the is not + + . + + + + + Cleans up this connection object + + true to release both managed and unmanaged resources; false to release only unmanaged resources + + + + Gets or sets the connection string. + + The connection string required to establish the initial connection to a data source. The default value is an empty string. On a closed connection, the currently set value is returned. If no value has been set, an empty string is returned. + + An attempt was made to set the property after the + + ’s was initialized. The + + is initialized either when the instance is constructed through the overload that takes a + + as a parameter, or when the + + instance has been opened. + + An invalid connection string keyword has been provided or a required connection string keyword has not been provided. + + + Gets the number of seconds to wait when attempting to establish a connection before ending the attempt and generating an error. + The time (in seconds) to wait for a connection to open. The default value is the underlying data provider's default time-out. + The value set is less than 0. + + + Gets the name of the current database, or the database that will be used after a connection is opened. + The value of the Database property of the underlying data provider. + The underlying data provider is not known. + + + + Gets the state of the EntityConnection, which is set up to track the state of the underlying + database connection that is wrapped by this EntityConnection. + + + + Gets the name or network address of the data source to connect to. + The name of the data source. The default value is an empty string. + The underlying data provider is not known. + + + Gets a string that contains the version of the data source to which the client is connected. + The version of the data source that is contained in the provider connection string. + The connection is closed. + + + + Gets the provider factory associated with EntityConnection + + + + + Provides access to the underlying data source connection that is used by the + + object. + + + The for the data source connection. + + + + + Gets the current transaction that this connection is enlisted in. May be null. + + + + + Class representing a connection string builder for the entity client provider + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class using the supplied connection string. + + A provider-specific connection string to the underlying data source. + + + + Clears the contents of the instance. + + + + + Determines whether the contains a specific key. + + + Returns true if the contains an element that has the specified key; otherwise, false. + + + The key to locate in the . + + + + + Retrieves a value corresponding to the supplied key from this + + . + + Returns true if keyword was found in the connection string; otherwise, false. + The key of the item to retrieve. + The value corresponding to keyword. + keyword contains a null value (Nothing in Visual Basic). + + + + Removes the entry with the specified key from the + + instance. + + Returns true if the key existed in the connection string and was removed; false if the key did not exist. + + The key of the keyword/value pair to be removed from the connection string in this + + . + + keyword is null (Nothing in Visual Basic) + + + Gets or sets the name of a section as defined in a configuration file. + The name of a section in a configuration file. + + + Gets or sets the name of the underlying .NET Framework data provider in the connection string. + The invariant name of the underlying .NET Framework data provider. + + + Gets or sets the metadata locations in the connection string. + Gets or sets the metadata locations in the connection string. + + + Gets or sets the inner, provider-specific connection string. + The inner, provider-specific connection string. + + + + Gets a value that indicates whether the + + has a fixed size. + + + Returns true in every case, because the + + supplies a fixed-size collection of keyword/value pairs. + + + + + Gets an that contains the keys in the + + . + + + An that contains the keys in the + + . + + + + Gets or sets the value associated with the specified key. In C#, this property is the indexer. + The value associated with the specified key. + The key of the item to get or set. + keyword is a null reference (Nothing in Visual Basic). + Tried to add a key that does not exist in the available keys. + Invalid value in the connection string (specifically, a Boolean or numeric value was expected but not supplied). + + + + A data reader class for the entity client provider + + + + + Closes the object. + + + + + Releases the resources consumed by this and calls + + . + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + Gets the value of the specified column as a Boolean. + The value of the specified column. + The zero-based column ordinal. + + + Gets the value of the specified column as a byte. + The value of the specified column. + The zero-based column ordinal. + + + Reads a stream of bytes from the specified column, starting at location indicated by dataIndex , into the buffer, starting at the location indicated by bufferIndex . + The actual number of bytes read. + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + + + Gets the value of the specified column as a single character. + The value of the specified column. + The zero-based column ordinal. + + + Reads a stream of characters from the specified column, starting at location indicated by dataIndex , into the buffer, starting at the location indicated by bufferIndex . + The actual number of characters read. + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + + + Gets the name of the data type of the specified column. + The name of the data type. + The zero-based column ordinal. + + + + Gets the value of the specified column as a object. + + The value of the specified column. + The zero-based column ordinal. + + + + Returns a object for the requested column ordinal that can be overridden with a provider-specific implementation. + + A data reader. + The zero-based column ordinal. + + + + Gets the value of the specified column as a object. + + The value of the specified column. + The zero-based column ordinal. + + + Gets the value of the specified column as a double-precision floating point number. + The value of the specified column. + The zero-based column ordinal. + + + Gets the data type of the specified column. + The data type of the specified column. + The zero-based column ordinal. + + + Gets the value of the specified column as a single-precision floating point number. + The value of the specified column. + The zero-based column ordinal. + + + Gets the value of the specified column as a globally-unique identifier (GUID). + The value of the specified column. + The zero-based column ordinal. + + + Gets the value of the specified column as a 16-bit signed integer. + The value of the specified column. + The zero-based column ordinal. + + + Gets the value of the specified column as a 32-bit signed integer. + The value of the specified column. + The zero-based column ordinal. + + + Gets the value of the specified column as a 64-bit signed integer. + The value of the specified column. + The zero-based column ordinal. + + + Gets the name of the column, given the zero-based column ordinal. + The name of the specified column. + The zero-based column ordinal. + + + Gets the column ordinal given the name of the column. + The zero-based column ordinal. + The name of the column. + The name specified is not a valid column name. + + + Returns the provider-specific field type of the specified column. + + The object that describes the data type of the specified column. + + The zero-based column ordinal. + + + + Gets the value of the specified column as an instance of . + + The value of the specified column. + The zero-based column ordinal. + + + Gets all provider-specific attribute columns in the collection for the current row. + + The number of instances of in the array. + + + An array of into which to copy the attribute columns. + + + + + Returns a that describes the column metadata of the + + . + + + A that describes the column metadata. + + + + + Gets the value of the specified column as an instance of . + + The value of the specified column. + The zero-based column ordinal. + + + + Gets the value of the specified column as an instance of . + + The value of the specified column. + The zero-based column ordinal. + + + Populates an array of objects with the column values of the current row. + + The number of instances of in the array. + + + An array of into which to copy the attribute columns. + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + true if the specified column is equivalent to ; otherwise, false. + + The zero-based column ordinal. + + + Advances the reader to the next result when reading the results of a batch of statements. + true if there are more result sets; otherwise, false. + + + + Asynchronously moves the reader to the next result set when reading a batch of statements + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if there are more result sets; false otherwise. + + + + Advances the reader to the next record in a result set. + true if there are more rows; otherwise, false. + + + + Asynchronously moves the reader to the next row of the current result set + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains true if there are more rows; false otherwise. + + + + + Returns an that can be used to iterate through the rows in the data reader. + + + An that can be used to iterate through the rows in the data reader. + + + + + Returns a nested . + + The nested data record. + The number of the DbDataRecord to return. + + + + Returns nested readers as objects. + + + The nested readers as objects. + + The ordinal of the column. + + + Gets a value indicating the depth of nesting for the current row. + The depth of nesting for the current row. + + + Gets the number of columns in the current row. + The number of columns in the current row. + + + + Gets a value that indicates whether this contains one or more rows. + + + true if the contains one or more rows; otherwise, false. + + + + + Gets a value indicating whether the is closed. + + + true if the is closed; otherwise, false. + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + The number of rows changed, inserted, or deleted. Returns -1 for SELECT statements; 0 if no rows were affected or the statement failed. + + + + Gets the value of the specified column as an instance of . + + The value of the specified column. + The zero-based column ordinal + + + + Gets the value of the specified column as an instance of . + + The value of the specified column. + The name of the column. + + + + Gets the number of fields in the that are not hidden. + + The number of fields that are not hidden. + + + + Gets for this + + . + + The information of a data record. + + + + Class representing a parameter used in EntityCommand + + + + + Initializes a new instance of the class using the default values. + + + + + Initializes a new instance of the class using the specified parameter name and data type. + + The name of the parameter. + + One of the values. + + + + + Initializes a new instance of the class using the specified parameter name, data type and size. + + The name of the parameter. + + One of the values. + + The size of the parameter. + + + + Initializes a new instance of the class using the specified properties. + + The name of the parameter. + + One of the values. + + The size of the parameter. + The name of the source column. + + + + Initializes a new instance of the class using the specified properties. + + The name of the parameter. + + One of the values. + + The size of the parameter. + + One of the values. + + true to indicate that the parameter accepts null values; otherwise, false. + The number of digits used to represent the value. + The number of decimal places to which value is resolved. + The name of the source column. + + One of the values. + + The value of the parameter. + + + + Resets the type associated with the . + + + + Returns a string representation of the parameter. + A string representation of the parameter. + + + Gets or sets the name of the entity parameter. + The name of the entity parameter. + + + + Gets or sets the of the parameter. + + + One of the values. + + + + Gets or sets the type of the parameter, expressed as an EdmType. + The type of the parameter, expressed as an EdmType. + + + + Gets or sets the number of digits used to represent the + + property. + + The number of digits used to represent the value. + + + + Gets or sets the number of decimal places to which + + is resolved. + + The number of decimal places to which value is resolved. + + + Gets or sets the value of the parameter. + The value of the parameter. + + + Gets or sets the direction of the parameter. + + One of the values. + + + + Gets or sets a value that indicates whether the parameter accepts null values. + true if null values are accepted; otherwise, false. + + + Gets or sets the maximum size of the data within the column. + The maximum size of the data within the column. + + + + Gets or sets the name of the source column mapped to the and used for loading or returning the + + . + + The name of the source column mapped to the dataset and used for loading or returning the value. + + + Gets or sets a value that indicates whether source column is nullable. + true if source column is nullable; otherwise, false. + + + + Gets or sets the to use when loading the value. + + + One of the values. + + + + + Class representing a provider factory for the entity client provider + + + + + A singleton object for the entity client provider factory object. + This remains a public field (not property) because DbProviderFactory expects a field. + + + + + Returns a new instance of the provider's class that implements the + + class. + + + A new instance of . + + + + + Throws a . This method is currently not supported. + + This method is currently not supported. + + + + Returns a new instance of the provider's class that implements the + + class. + + + A new instance of . + + + + + Returns a new instance of the provider's class that implements the + + class. + + + A new instance of . + + + + + Throws a . This method is currently not supported. + + This method is currently not supported. + + + + Returns a new instance of the provider's class that implements the + + class. + + + A new instance of . + + + + + Throws a . This method is currently not supported. + + This method is currently not supported. + This method is currently not supported. + + + + Returns the requested class. + + + A new instance of . The supported types are + + , + + , and + + . Returns null (or Nothing in Visual Basic) for every other type. + + + The to return. + + + + + Class representing a transaction for the conceptual layer + + + + Commits the underlying transaction. + + + Rolls back the underlying transaction. + + + + Cleans up this transaction object + + true to release both managed and unmanaged resources; false to release only unmanaged resources + + + + Gets for this + + . + + + An to the underlying data source. + + + + + The connection object owning this transaction object + + + + + Gets the isolation level of this . + + + An enumeration value that represents the isolation level of the underlying transaction. + + + + + Gets the DbTransaction for the underlying provider transaction. + + + + + Represents a failure while trying to prepare or execute a CommandCompilation + This exception is intended to provide a common exception that people can catch to + hold provider exceptions (SqlException, OracleException) when using the EntityCommand + to execute statements. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of . + + The message that describes the error. + + + + Initializes a new instance of . + + The error message that explains the reason for the exception. + The exception that caused the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Represents a failure while trying to prepare or execute a CommandExecution + This exception is intended to provide a common exception that people can catch to + hold provider exceptions (SqlException, OracleException) when using the EntityCommand + to execute statements. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of . + + The message that describes the error. + + + + Initializes a new instance of . + + The error message that explains the reason for the exception. + The exception that caused the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + An identifier for an entity. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with an entity set name and a generic + + collection. + + + A that is the entity set name qualified by the entity container name. + + + A generic collection.Each key/value pair has a property name as the key and the value of that property as the value. There should be one pair for each property that is part of the + + . The order of the key/value pairs is not important, but each key property should be included. The property names are simple names that are not qualified with an entity type name or the schema name. + + + + + Initializes a new instance of the class with an entity set name and an + + collection of + + objects. + + + A that is the entity set name qualified by the entity container name. + + + An collection of + + objects with which to initialize the key. + + + + + Initializes a new instance of the class with an entity set name and specific entity key pair. + + + A that is the entity set name qualified by the entity container name. + + + A that is the name of the key. + + + An that is the key value. + + + + Gets the entity set for this entity key from the given metadata workspace. + + The for the entity key. + + The metadata workspace that contains the entity. + The entity set could not be located in the specified metadata workspace. + + + Returns a value that indicates whether this instance is equal to a specified object. + true if this instance and obj have equal values; otherwise, false. + + An to compare with this instance. + + + + + Returns a value that indicates whether this instance is equal to a specified + + . + + true if this instance and other have equal values; otherwise, false. + + An object to compare with this instance. + + + + + Serves as a hash function for the current object. + + is suitable for hashing algorithms and data structures such as a hash table. + + + A hash code for the current . + + + + + Compares two objects. + + true if the key1 and key2 values are equal; otherwise, false. + + A to compare. + + + A to compare. + + + + + Compares two objects. + + true if the key1 and key2 values are not equal; otherwise, false. + + A to compare. + + + A to compare. + + + + + Helper method that is used to deserialize an . + + Describes the source and destination of a given serialized stream, and provides an additional caller-defined context. + + + + Helper method that is used to deserialize an . + + Describes the source and destination of a given serialized stream and provides an additional caller-defined context. + + + + Gets a singleton EntityKey by which a read-only entity is identified. + + + + + Gets a singleton EntityKey identifying an entity resulted from a failed TREAT. + + + + Gets or sets the name of the entity set. + + A value that is the name of the entity set for the entity to which the + + belongs. + + + + Gets or sets the name of the entity container. + + A value that is the name of the entity container for the entity to which the + + belongs. + + + + + Gets or sets the key values associated with this . + + + A of key values for this + + . + + + + + Gets a value that indicates whether the is temporary. + + + true if the is temporary; otherwise, false. + + + + + Information about a key that is part of an EntityKey. + A key member contains the key name and value. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified entity key pair. + + The name of the key. + The key value. + + + Returns a string representation of the entity key. + A string representation of the entity key. + + + Gets or sets the name of the entity key. + The key name. + + + Gets or sets the value of the entity key. + The key value. + + + + Kind of collection (applied to Properties) + + + + + Property is not a Collection + + + + + Collection has Bag semantics( unordered and duplicates ok) + + + + + Collection has List semantics + (Order is deterministic and duplicates ok) + + + + + The concurrency mode for properties. + + + + + Default concurrency mode: the property is never validated + at write time + + + + + Fixed concurrency mode: the property is always validated at + write time + + + + + The pattern for Server Generated Properties. + + + + + Not a Server Generated Property. This is the default. + + + + + A value is generated on INSERT, and remains unchanged on update. + + + + + A value is generated on both INSERT and UPDATE. + + + + + Represents an eSQL Query compilation exception; + The class of exceptional conditions that may cause this exception to be raised are mainly: + 1) Syntax Errors: raised during query text parsing and when a given query does not conform to eSQL formal grammar; + 2) Semantic Errors: raised when semantic rules of eSQL language are not met such as metadata or schema information + not accurate or not present, type validation errors, scoping rule violations, user of undefined variables, etc. + For more information, see eSQL Language Spec. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a specialized error message. + + The message that describes the error. + + + + Initializes a new instance of the class that uses a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that caused the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + Gets a description of the error. + A string that describes the error. + + + Gets the approximate context where the error occurred, if available. + A string that describes the approximate context where the error occurred, if available. + + + Gets the approximate line number where the error occurred. + An integer that describes the line number where the error occurred. + + + Gets the approximate column number where the error occurred. + An integer that describes the column number where the error occurred. + + + + Thrown to indicate that a command tree is invalid. + + + + + Initializes a new instance of the class with a default message. + + + + + Initializes a new instance of the class with the specified message. + + The exception message. + + + + Initializes a new instance of the class with the specified message and inner exception. + + The exception message. + + The exception that is the cause of this . + + + + + Mapping exception class. Note that this class has state - so if you change even + its internals, it can be a breaking change + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a specialized error message. + + The message that describes the error. + + + + Initializes a new instance of that uses a specified error message and a reference to the inner exception. + + The message that describes the error. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Class for representing a collection of mapping items in Edm space. + + + + + Base class for the type created at design time to store the generated views. + + + + Returns the key/value pair at the specified index, which contains the view and its key. + The key/value pair at index , which contains the view and its key. + The index of the view. + + + + Gets or sets the name of . + + The container name. + + + + Gets or sets in storage schema. + + Container name. + + + Hash value. + Hash value. + + + Hash value of views. + Hash value. + + + Gets or sets view count. + View count. + + + + Attribute to mark the assemblies that contain the generated views type. + + + + + Initializes a new instance of the class. + + The view type. + + + Gets the T:System.Type of the view. + The T:System.Type of the view. + + + + Represents a complex type mapping for a function import result. + + + + + Specifies a function import structural type mapping. + + + + + Gets the property mappings for the result type of a function import. + + + + + Initializes a new FunctionImportComplexTypeMapping instance. + + The return type. + The property mappings for the result type of a function import. + + + + Ges the return type. + + + + + Represents a function import entity type mapping. + + + + + Initializes a new FunctionImportEntityTypeMapping instance. + + The entity types at the base of + the type hierarchies to be mapped. + The entity types to be mapped. + The property mappings for the result types of a function import. + The mapping conditions. + + + + Gets the entity types being mapped. + + + + + Gets the entity types at the base of the hierarchies being mapped. + + + + + Gets the mapping conditions. + + + + + Represents a mapping condition for a function import result. + + + + + + + + Gets the name of the column used to evaluate the condition. + + + + + Represents a mapping condition for the result of a function import + evaluated by checking null or not null. + + + + + Initializes a new FunctionImportEntityTypeMappingConditionIsNull instance. + + The name of the column used to evaluate the condition. + Flag that indicates whether a null or not null check is performed. + + + + Gets a flag that indicates whether a null or not null check is performed. + + + + + Represents a mapping condition for the result of a function import, + evaluated by comparison with a specified value. + + + + + Initializes a new FunctionImportEntityTypeMappingConditionValue instance. + + The name of the column used to evaluate the condition. + The value to compare with. + + + + Gets the value used for comparison. + + + + + Represents a mapping from a model function import to a store composable or non-composable function. + + + + + Gets model function (or source of the mapping) + + + + + Gets store function (or target of the mapping) + + + + + Represents a mapping from a model function import to a store composable function. + + + + + Initializes a new FunctionImportMappingComposable instance. + + The model function import. + The store composable function. + The result mapping for the function import. + The parent container mapping. + + + + Gets the result mapping for the function import. + + + + + Represents a mapping from a model function import to a store non-composable function. + + + + + Initializes a new FunctionImportMappingNonComposable instance. + + The model function import. + The store non-composable function. + The function import result mappings. + The parent container mapping. + + + + Gets the function import result mappings. + + + + + Base class for mapping a property of a function import return type. + + + + + Maps a function import return type property to a table column. + + + + + Initializes a new FunctionImportReturnTypeScalarPropertyMapping instance. + + The mapped property name. + The mapped column name. + + + + Gets the mapped property name. + + + + + Gets the mapped column name. + + + + + Represents the base item class for all the mapping metadata + + + + + Represents the base item class for all the metadata + + + + + Describes modification function mappings for an association set. + + + + + Initalizes a new AssociationSetModificationFunctionMapping instance. + + An association set. + A delete function mapping. + An insert function mapping. + + + + + + + Gets the association set. + + + + + Gets the delete function mapping. + + + + + Gets the insert function mapping. + + + + + Describes modification function mappings for an entity type within an entity set. + + + + + Initializes a new EntityTypeModificationFunctionMapping instance. + + An entity type. + A delete function mapping. + An insert function mapping. + An updated function mapping. + + + + + + + Gets the entity type. + + + + + Gets the delete function mapping. + + + + + Gets the insert function mapping. + + + + + Gets hte update function mapping. + + + + + Describes the location of a member within an entity or association type structure. + + + + + Initializes a new ModificationFunctionMemberPath instance. + + Gets the members in the path from the leaf (the member being bound) + to the root of the structure. + Gets the association set to which we are navigating + via this member. If the value is null, this is not a navigation member path. + + + + + + + Gets the members in the path from the leaf (the member being bound) + to the Root of the structure. + + + + + Gets the association set to which we are navigating via this member. If the value + is null, this is not a navigation member path. + + + + + Binds a modification function parameter to a member of the entity or association being modified. + + + + + Initializes a new ModificationFunctionParameterBinding instance. + + The parameter taking the value. + The path to the entity or association member defining the value. + A flag indicating whether the current or original member value is being bound. + + + + + + + Gets the parameter taking the value. + + + + + Gets the path to the entity or association member defining the value. + + + + + Gets a flag indicating whether the current or original + member value is being bound. + + + + + Defines a binding from a named result set column to a member taking the value. + + + + + Initializes a new ModificationFunctionResultBinding instance. + + The name of the column to bind from the function result set. + The property to be set on the entity. + + + + + + + Gets the name of the column to bind from the function result set. + + + + + Gets the property to be set on the entity. + + + + + Represents the Mapping metadata for an AssociationSet in CS space. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityTypeMapping + --MappingFragment + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + This class represents the metadata for the AssociationSetMapping elements in the + above example. And it is possible to access the AssociationTypeMap underneath it. + There will be only one TypeMap under AssociationSetMap. + + + + + Represents the Mapping metadata for an Extent in CS space. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityTypeMapping + --MappingFragment + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + This class represents the metadata for all the extent map elements in the + above example namely EntitySetMapping, AssociationSetMapping and CompositionSetMapping. + The EntitySetBaseMapping elements that are children of the EntityContainerMapping element + can be accessed through the properties on this type. + + + + + Gets the parent container mapping. + + + + + Gets or sets the query view associated with this mapping. + + + + + Initializes a new AssociationSetMapping instance. + + The association set to be mapped. + The store entity set to be mapped. + The parent container mapping. + + + + Adds a property mapping condition. + + The condition to add. + + + + Removes a property mapping condition. + + The property mapping condition to remove. + + + + Gets the association set that is mapped. + + + + + Gets the contained association type mapping. + + + + + Gets or sets the corresponding function mapping. Can be null. + + + + + Gets the store entity set that is mapped. + + + + + Gets or sets the source end property mapping. + + + + + Gets or sets the target end property mapping. + + + + + Gets the property mapping conditions. + + + + + Represents the Mapping metadata for an association type map in CS space. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap + --ScalarPropertyMap + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap + --ComplexPropertyMap + --ComplexTypeMap + --ScalarPropertyMap + --ScalarProperyMap + --ScalarPropertyMap + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + --EndPropertyMap + --ScalarPropertyMap + --ScalarProperyMap + --EndPropertyMap + --ScalarPropertyMap + This class represents the metadata for all association Type map elements in the + above example. Users can access the table mapping fragments under the + association type mapping through this class. + + + + + Represents the Mapping metadata for a type map in CS space. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap + --ScalarPropertyMap + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap + --ComplexPropertyMap + --ScalarPropertyMap + --ScalarProperyMap + --ScalarPropertyMap + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + --EndPropertyMap + --ScalarPropertyMap + --ScalarProperyMap + --EndPropertyMap + --ScalarPropertyMap + This class represents the metadata for all the Type map elements in the + above example namely EntityTypeMapping, AssociationTypeMapping and CompositionTypeMapping. + The TypeMapping elements contain TableMappingFragments which in turn contain the property maps. + + + + + Creates an AssociationTypeMapping instance. + + The AssociationSetMapping that + the contains this AssociationTypeMapping. + + + + Gets the AssociationSetMapping that contains this AssociationTypeMapping. + + + + + Gets the association type being mapped. + + + + + Gets the single mapping fragment. + + + + + Mapping metadata for Complex properties. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ComplexPropertyMap + --ComplexTypeMapping + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --DiscriminatorProperyMap ( constant value-->SMemberMetadata ) + --ComplexTypeMapping + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --DiscriminatorProperyMap ( constant value-->SMemberMetadata ) + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + --EndPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --EndPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + This class represents the metadata for all the complex property map elements in the + above example. ComplexPropertyMaps contain ComplexTypeMaps which define mapping based + on the type of the ComplexProperty in case of inheritance. + + + + + Construct a new Complex Property mapping object + + The MemberMetadata object that represents this Complex member + + + + Adds a type mapping corresponding to a nested complex type. + + The complex type mapping to be added. + + + + Removes a type mapping corresponding to a nested complex type. + + The complex type mapping to be removed. + + + + Gets a read only collections of type mappings corresponding to the + nested complex types. + + + + + Mapping metadata for Complex Types. + + + + + Creates a ComplexTypeMapping instance. + + The ComplexType being mapped. + + + + Adds a property mapping. + + The property mapping to be added. + + + + Removes a property mapping. + + The property mapping to be removed. + + + + Adds a property mapping condition. + + The property mapping condition to be added. + + + + Removes a property mapping condition. + + The property mapping condition to be removed. + + + + Gets the ComplexType being mapped. + + + + + Gets a read-only collection of property mappings. + + + + + Gets a read-only collection of property mapping conditions. + + + + + Mapping metadata for End property of an association. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ComplexPropertyMap + --ComplexTypeMapping + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --DiscriminatorProperyMap ( constant value-->SMemberMetadata ) + --ComplexTypeMapping + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --DiscriminatorProperyMap ( constant value-->SMemberMetadata ) + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + --EndPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --EndPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + This class represents the metadata for all the end property map elements in the + above example. EndPropertyMaps provide mapping for each end of the association. + + + + + Creates an association end property mapping. + + An AssociationEndMember that specifies + the association end to be mapped. + + + + Adds a child property-column mapping. + + A ScalarPropertyMapping that specifies + the property-column mapping to be added. + + + + Removes a child property-column mapping. + + A ScalarPropertyMapping that specifies + the property-column mapping to be removed. + + + + Gets an AssociationEndMember that specifies the mapped association end. + + + + + Gets a ReadOnlyCollection of ScalarPropertyMapping that specifies the children + of this association end property mapping. + + + + + Represents the Mapping metadata for the EntityContainer map in CS space. + Only one EntityContainerMapping element is allowed in the MSL file for CS mapping. + + + For Example if conceptually you could represent the CS MSL file as following + ---Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --AssociationSetMapping + The type represents the metadata for EntityContainerMapping element in the above example. + The EntitySetBaseMapping elements that are children of the EntityContainerMapping element + can be accessed through the properties on this type. + + + We currently assume that an Entity Container on the C side + is mapped to a single Entity Container in the S - space. + + + + + Initializes a new EntityContainerMapping instance. + + The conceptual entity container to be mapped. + The store entity container to be mapped. + The parent mapping item collection. + Flag indicating whether to generate update views. + + + + Adds an entity set mapping. + + The entity set mapping to add. + + + + Removes an association set mapping. + + The association set mapping to remove. + + + + Adds an association set mapping. + + The association set mapping to add. + + + + Removes an association set mapping. + + The association set mapping to remove. + + + + Adds a function import mapping. + + The function import mapping to add. + + + + Removes a function import mapping. + + The function import mapping to remove. + + + + Gets the parent mapping item collection. + + + + + Gets the type kind for this item + + + + + Gets the conceptual entity container. + + + + + Gets the store entity container. + + + + + Gets the entity set mappings. + + + + + Gets the association set mappings. + + + + + Gets the function import mappings. + + + + + Gets a flag that indicates whether to generate the update views or not. + + + + + Represents the Mapping metadata for an EnitytSet in CS space. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityTypeMapping + --MappingFragment + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + This class represents the metadata for the EntitySetMapping elements in the + above example. And it is possible to access the EntityTypeMaps underneath it. + + + + + Initialiazes a new EntitySetMapping instance. + + The entity set to be mapped. + The parent container mapping. + + + + Adds a type mapping. + + The type mapping to add. + + + + Removes a type mapping. + + The type mapping to remove. + + + + Adds a function mapping. + + The function mapping to add. + + + + Removes a function mapping. + + The function mapping to remove. + + + + Gets the entity set that is mapped. + + + + + Gets the contained entity type mappings. + + + + + Gets the corresponding function mappings. + + + + + Mapping metadata for Entity type. + If an EntitySet represents entities of more than one type, than we will have + more than one EntityTypeMapping for an EntitySet( For ex : if + PersonSet Entity extent represents entities of types Person and Customer, + than we will have two EntityType Mappings under mapping for PersonSet). + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap + --ScalarPropertyMap + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap + --ComplexPropertyMap + --ScalarPropertyMap + --ScalarProperyMap + --ScalarPropertyMap + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + --EndPropertyMap + --ScalarPropertyMap + --ScalarProperyMap + --EndPropertyMap + --ScalarPropertyMap + This class represents the metadata for all entity Type map elements in the + above example. Users can access the table mapping fragments under the + entity type mapping through this class. + + + + + Creates an EntityTypeMapping instance. + + The EntitySetMapping that contains this EntityTypeMapping. + + + + Adds an entity type to the mapping. + + The EntityType to be added. + + + + Removes an entity type from the mapping. + + The EntityType to be removed. + + + + Adds an entity type hierarchy to the mapping. + The hierarchy is represented by the specified root entity type. + + The root EntityType of the hierarchy to be added. + + + + Removes an entity type hierarchy from the mapping. + The hierarchy is represented by the specified root entity type. + + The root EntityType of the hierarchy to be removed. + + + + Adds a mapping fragment. + + The mapping fragment to be added. + + + + Removes a mapping fragment. + + The mapping fragment to be removed. + + + + Gets the EntitySetMapping that contains this EntityTypeMapping. + + + + + Gets the single EntityType being mapped. Throws exception in case of hierarchy type mapping. + + + + + Gets a flag that indicates whether this is a type hierarchy mapping. + + + + + Gets a read-only collection of mapping fragments. + + + + + Gets the mapped entity types. + + + + + Gets the mapped base types for a hierarchy mapping. + + + + + Represents the metadata for mapping fragment. + A set of mapping fragments makes up the Set mappings( EntitySet, AssociationSet or CompositionSet ) + Each MappingFragment provides mapping for those properties of a type that map to a single table. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ComplexPropertyMap + --ComplexTypeMapping + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --DiscriminatorProperyMap ( constant value-->SMemberMetadata ) + --ComplexTypeMapping + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --DiscriminatorProperyMap ( constant value-->SMemberMetadata ) + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + --EndPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --EndPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + This class represents the metadata for all the mapping fragment elements in the + above example. Users can access all the top level constructs of + MappingFragment element like EntityKey map, Property Maps, Discriminator + property through this mapping fragment class. + + + + + Creates a MappingFragment instance. + + The EntitySet corresponding to the table of view being mapped. + The TypeMapping that contains this MappingFragment. + Flag that indicates whether to include 'DISTINCT' when generating queries. + + + + Adds a property mapping. + + The property mapping to be added. + + + + Removes a property mapping. + + The property mapping to be removed. + + + + Adds a property mapping condition. + + The property mapping condition to be added. + + + + Removes a property mapping condition. + + The property mapping condition to be removed. + + + + Gets the EntitySet corresponding to the table or view being mapped. + + + + + Gets the TypeMapping that contains this MappingFragment. + + + + + Gets a flag that indicates whether to include 'DISTINCT' when generating queries. + + + + + Gets a read-only collection of property mappings. + + + + + Gets a read-only collection of property mapping conditions. + + + + + Represents a collection of items in Storage Mapping (CS Mapping) space. + + + + Initializes a new instance of the class using the specified , and a collection of string indicating the metadata file paths. + The that this mapping is to use. + The that this mapping is to use. + The file paths that this mapping is to use. + + + Initializes a new instance of the class using the specified , and XML readers. + The that this mapping is to use. + The that this mapping is to use. + The XML readers that this mapping is to use. + + + + Computes a hash value for the container mapping specified by the names of the mapped containers. + + The name of a container in the conceptual model. + The name of a container in the store model. + A string that specifies the computed hash value. + + + + Computes a hash value for the single container mapping in the collection. + + A string that specifies the computed hash value. + + + + Creates a dictionary of (extent, generated view) for a container mapping specified by + the names of the mapped containers. + + The name of a container in the conceptual model. + The name of a container in the store model. + A list that accumulates potential errors. + + A dictionary of (, ) that specifies the generated views. + + + + + Creates a dictionary of (extent, generated view) for the single container mapping + in the collection. + + A list that accumulates potential errors. + + A dictionary of (, ) that specifies the generated views. + + + + + Factory method that creates a . + + + The edm metadata collection to map. Must not be null. + + + The store metadata collection to map. Must not be null. + + + MSL artifacts to load. Must not be null. + + + Paths to MSL artifacts. Used in error messages. Can be null in which case + the base Uri of the XmlReader will be used as a path. + + + The collection of errors encountered while loading. + + + instance if no errors encountered. Otherwise null. + + + + + Gets or sets a for creating instances + that are used to retrieve pre-generated mapping views. + + + + Gets the version of this represents. + The version of this represents. + + + + Describes modification function binding for change processing of entities or associations. + + + + + Initializes a new ModificationFunctionMapping instance. + + The entity or association set. + The entity or association type. + The metadata of function to which we should bind. + Bindings for function parameters. + The output parameter producing number of rows affected. + Bindings for the results of function evaluation + + + + + + + Gets output parameter producing number of rows affected. May be null. + + + + + Gets Metadata of function to which we should bind. + + + + + Gets bindings for function parameters. + + + + + Gets bindings for the results of function evaluation. + + + + + Mapping metadata for scalar properties. + + + For Example if conceptually you could represent the CS MSL file as following + --Mapping + --EntityContainerMapping ( CNorthwind-->SNorthwind ) + --EntitySetMapping + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --EntityTypeMapping + --MappingFragment + --EntityKey + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ComplexPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --AssociationSetMapping + --AssociationTypeMapping + --MappingFragment + --EndPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) + --EndPropertyMap + --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) + This class represents the metadata for all the scalar property map elements in the + above example. + + + + + Creates a mapping between a simple property and a column. + + The property to be mapped. + The column to be mapped. + + + + Gets an EdmProperty that specifies the mapped column. + + + + + metadata exception class + + + + + Initializes a new instance of the class with a default message. + + + + + Initializes a new instance of the class with the specified message. + + The exception message. + + + + Initializes a new instance of the class with the specified message and inner exception. + + The exception message. + + The exception that is the cause of this . + + + + + DataSpace + + + + + OSpace indicates the item in the clr space + + + + + CSpace indicates the item in the CSpace - edm primitive types + + types defined in csdl + + + + + SSpace indicates the item in the SSpace + + + + + Mapping between OSpace and CSpace + + + + + Mapping between CSpace and SSpace + + + + + This class encapsulates the error information for a generic EDM error. + + + + Gets the error message. + The error message. + + + + Class for representing a collection of items in Edm space. + + + + + Initializes a new instance of the class by using the collection of the XMLReader objects where the conceptual schema definition language (CSDL) files exist. + + The collection of the XMLReader objects where the conceptual schema definition language (CSDL) files exist. + + + Initializes a new instance of the class. + The entity data model. + + + + Initializes a new instance of the class by using the paths where the conceptual schema definition language (CSDL) files exist. + + The paths where the conceptual schema definition language (CSDL) files exist. + + + + Returns a collection of the objects. + + + A ReadOnlyCollection object that represents a collection of the + + objects. + + + + + Returns a collection of the objects with the specified conceptual model version. + + + A ReadOnlyCollection object that represents a collection of the + + objects. + + The conceptual model version. + + + + Factory method that creates an . + + + CSDL artifacts to load. Must not be null. + + + Paths to CSDL artifacts. Used in error messages. Can be null in which case + the base Uri of the XmlReader will be used as a path. + + + The collection of errors encountered while loading. + + + instance if no errors encountered. Otherwise null. + + + + Gets the conceptual model version for this collection. + The conceptual model version for this collection. + + + + This class encapsulates the error information for a schema error that was encountered. + + + + + Constructs a EdmSchemaError object. + + The explanation of the error. + The code associated with this error. + The severity of the error. + + + Returns the error message. + The error message. + + + Gets the error code. + The error code. + + + Gets the severity level of the error. + + One of the values. The default is + + . + + + + Gets the line number where the error occurred. + The line number where the error occurred. + + + Gets the column where the error occurred. + The column where the error occurred. + + + Gets the location of the schema that contains the error. This string also includes the name of the schema at the end. + The location of the schema that contains the error. + + + Gets the name of the schema that contains the error. + The name of the schema that contains the error. + + + Gets a string representation of the stack trace at the time the error occurred. + A string representation of the stack trace at the time the error occurred. + + + + Defines the different severities of errors that can occur when validating an Entity Framework model. + + + + + A warning that does not prevent the model from being used. + + + + + An error that prevents the model from being used. + + + + + Represents a end of a Association Type + + + + + Initializes a new instance of the RelationshipEndMember class + + + + + Represents the edm member class + + + + Returns the name of this member. + The name of this member. + + + + Gets or sets the name of the property. Setting this from a store-space model-convention will change the name of the database + column for this property. In the conceptual model, this should align with the corresponding property from the entity class + and should not be changed. + + The name of this member. + + + Gets the type on which this member is declared. + + A object that represents the type on which this member is declared. + + + + + Gets the instance of the class that contains both the type of the member and facets for the type. + + + A object that contains both the type of the member and facets for the type. + + + + + Tells whether this member is marked as a Computed member in the EDM definition + + + + + Tells whether this member's Store generated pattern is marked as Identity in the EDM definition + + + + Access the EntityType of the EndMember in an association. + The EntityType of the EndMember in an association. + + + Gets the operational behavior of this relationship end member. + + One of the values. The default is + + . + + + + Gets the multiplicity of this relationship end member. + + One of the values. + + + + + Creates a read-only AssociationEndMember instance. + + The name of the association end member. + The reference type for the end. + The multiplicity of the end. + Flag that indicates the delete behavior of the end. + Metadata properties to be associated with the instance. + The newly created AssociationEndMember instance. + The specified name is null or empty. + The specified reference type is null. + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Class for representing an Association set + + + + + Class for representing a relationship set + + + + + Class for representing a entity set + + + + Returns the name of the current entity or relationship set. + The name of the current entity or relationship set. + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets escaped provider specific SQL describing this entity set. + + + + + Gets or sets the name of the current entity or relationship set. + If this property is changed from store-space, the mapping layer must also be updated to reflect the new name. + To change the table name of a store space use the Table property. + + The name of the current entity or relationship set. + Thrown if the setter is called when EntitySetBase instance is in ReadOnly state + + + Gets the entity container of the current entity or relationship set. + + An object that represents the entity container of the current entity or relationship set. + + Thrown if the setter is called when the EntitySetBase instance or the EntityContainer passed into the setter is in ReadOnly state + + + + Gets the entity type of this . + + + An object that represents the entity type of this + + . + + Thrown if the setter is called when EntitySetBase instance is in ReadOnly state + + + + Gets or sets the database table name for this entity set. + + if value passed into setter is null + Thrown if the setter is called when EntitySetBase instance is in ReadOnly state + + + + Gets or sets the database schema for this entity set. + + if value passed into setter is null + Thrown if the setter is called when EntitySetBase instance is in ReadOnly state + + + + Gets the relationship type of this . + + + An object that represents the relationship type of this + + . + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Creates a read-only AssociationSet instance from the specified parameters. + + The name of the association set. + The association type of the elements in the association set. + The entity set for the source association set end. + The entity set for the target association set end. + Metadata properties to be associated with the instance. + The newly created AssociationSet instance. + The specified name is null or empty. + The specified association type is null. + + The entity type of one of the ends of the specified + association type does not match the entity type of the corresponding entity set end. + + + + + Gets the association related to this . + + + An object that represents the association related to this + + . + + + + + Gets the ends of this . + + + A collection of type that contains the ends of this + + . + + + + + Gets the built-in type kind for this . + + + A object that represents built-in type kind for this + + . + + + + + Class representing a AssociationSet End + + + + + Returns the name of the End role for this . + + + The name of the End role for this . + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the parent association set of this . + + + An object that represents the parent association set of this + + . + + Thrown if Setter is called when the AssociationSetEnd instance is in ReadOnly state + + + + Gets the End member that this object corresponds to. + + + An object that represents the End member that this + + object corresponds to. + + Thrown if Setter is called when the AssociationSetEnd instance is in ReadOnly state + + + + Gets the name of the End for this . + + + The name of the End for this . + + + + + Gets the name of the End role for this . + + + The name of the End role for this . + + Thrown if Setter is called when the AssociationSetEnd instance is in ReadOnly state + + + Gets the entity set referenced by this End role. + + An object that represents the entity set referred by this End role. + + + + + Describes an association/relationship between two entities in the conceptual model or a foreign key relationship + between two tables in the store model. In the conceptual model the dependant class may or may not define a foreign key property. + If a foreign key is defined the property will be true and the property will contain details of the foreign keys + + + + + Represents the Relationship type + + + + + Represents the Entity Type + + + + + Represents the Structural Type + + + + + Base EdmType class for all the model types + + + + Returns the full name of this type. + The full name of this type. + + + + Returns an instance of the whose element type is this type. + + + The object whose element type is this type. + + + + Gets the name of this type. + The name of this type. + + + Gets the namespace of this type. + The namespace of this type. + + + Gets a value indicating whether this type is abstract or not. + true if this type is abstract; otherwise, false. + Thrown if the setter is called on instance that is in ReadOnly state + + + Gets the base type of this type. + The base type of this type. + Thrown if the setter is called on instance that is in ReadOnly state + Thrown if the value passed in for setter will create a loop in the inheritance chain + + + Gets the full name of this type. + The full name of this type. + + + + Adds a member to this type + + The member to add + + + Removes a member from this type. + The member to remove. + + + Gets the list of members on this type. + + A collection of type that contains a set of members on this type. + + + + + Adds the specified property to the list of keys for the current entity. + + The property to add. + if member argument is null + Thrown if the EntityType has a base type of another EntityTypeBase. In this case KeyMembers should be added to the base type + If the EntityType instance is in ReadOnly state + + + Removes the specified key member from the collection. + The key member to remove. + + + Gets the list of all the key members for the current entity or relationship type. + + A object that represents the list of key members for the current entity or relationship type. + + + + Gets the list of all the key properties for this entity type. + The list of all the key properties for this entity type. + + + Gets the list of ends for this relationship type. + + A collection of type that contains the list of Ends for this relationship type. + + + + + Creates a read-only AssociationType instance from the specified parameters. + + The name of the association type. + The namespace of the association type. + Flag that indicates a foreign key (FK) relationship. + The data space for the association type. + The source association end member. + The target association end member. + A referential constraint. + Metadata properties to be associated with the instance. + The newly created AssociationType instance. + The specified name is null or empty. + The specified namespace is null or empty. + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the list of ends for this . + + + A collection of type that contains the list of ends for this + + . + + + + Gets or sets the referential constraint. + The referential constraint. + + + + Gets the list of constraints for this . + + + A collection of type that contains the list of constraints for this + + . + + + + Gets the Boolean property value that specifies whether the column is a foreign key. + A Boolean value that specifies whether the column is a foreign key. If true, the column is a foreign key. If false (default), the column is not a foreign key. + + + + Represents the structure of an . In the conceptual-model this represents the shape and structure + of an entity. In the store model this represents the structure of a table. To change the Schema and Table name use EntitySet. + + + + + Returns a object that references this + + . + + + A object that references this + + . + + + + + The factory method for constructing the EntityType object. + + The name of the entity type. + The namespace of the entity type. + The dataspace in which the EntityType belongs to. + Name of key members for the type. + Members of the entity type (primitive and navigation properties). + Metadata properties to be associated with the instance. + The EntityType object. + Thrown if either name, namespace arguments are null. + The newly created EntityType will be read only. + + + + The factory method for constructing the EntityType object. + + The name of the entity type. + The namespace of the entity type. + The dataspace in which the EntityType belongs to. + The base type. + Name of key members for the type. + Members of the entity type (primitive and navigation properties). + Metadata properties to be associated with the instance. + The EntityType object. + Thrown if either name, namespace arguments are null. + The newly created EntityType will be read only. + + + + Adds the specified navigation property to the members of this type. + The navigation property is added regardless of the read-only flag. + + The navigation property to be added. + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + Gets the declared navigation properties associated with the entity type. + The declared navigation properties associated with the entity type. + + + + Gets the navigation properties of this . + + + A collection of type that contains the list of navigation properties on this + + . + + + + Gets the list of declared properties for the entity type. + The declared properties for the entity type. + + + Gets the collection of declared members for the entity type. + The collection of declared members for the entity type. + + + + Gets the list of properties for this . + + + A collection of type that contains the list of properties for this + + . + + + + + Represents an enumeration type. + + + + + Class representing a simple type + + + + + Creates a read-only EnumType instance. + + The name of the enumeration type. + The namespace of the enumeration type. + The underlying type of the enumeration type. + Indicates whether the enumeration type can be treated as a bit field; that is, a set of flags. + The members of the enumeration type. + Metadata properties to be associated with the enumeration type. + The newly created EnumType instance. + underlyingType is null. + + name is null or empty. + -or- + namespaceName is null or empty. + -or- + underlyingType is not a supported underlying type. + -or- + The specified members do not have unique names. + -or- + The value of a specified member is not in the range of the underlying type. + + + + Returns the kind of the type + + + Gets a collection of enumeration members for this enumeration type. + + + Gets a value indicating whether the enum type is defined as flags (i.e. can be treated as a bit field) + + + Gets the underlying type for this enumeration type. + + + + Specifies the kinds of item attributes in the conceptual model. + + + + + An enumeration member indicating that an item attribute is System + + + + + An enumeration member indicating that an item attribute is Extended. + + + + + List of all the built in types + + + + + Association Type Kind + + + + + AssociationSetEnd Kind + + + + + AssociationSet Kind + + + + + Association Type Kind + + + + + EntitySetBase Kind + + + + + Entity Type Base Kind + + + + + Collection Type Kind + + + + + Collection Kind + + + + + Complex Type Kind + + + + + Documentation Kind + + + + + DeleteAction Type Kind + + + + + Edm Type Kind + + + + + Entity Container Kind + + + + + Entity Set Kind + + + + + Entity Type Kind + + + + + Enumeration Type Kind + + + + + Enum Member Kind + + + + + Facet Kind + + + + + EdmFunction Kind + + + + + Function Parameter Kind + + + + + Global Item Type Kind + + + + + Metadata Property Kind + + + + + Navigation Property Kind + + + + + Metadata Item Type Kind + + + + + EdmMember Type Kind + + + + + Parameter Mode Kind + + + + + Primitive Type Kind + + + + + Primitive Type Kind Kind + + + + + EdmProperty Type Kind + + + + + ProviderManifest Type Kind + + + + + Referential Constraint Type Kind + + + + + Ref Type Kind + + + + + RelationshipEnd Type Kind + + + + + Relationship Multiplicity Type Kind + + + + + Relationship Set Type Kind + + + + + Relationship Type + + + + + Row Type Kind + + + + + Simple Type Kind + + + + + Structural Type Kind + + + + + Type Information Kind + + + + + Represents the Edm Collection Type + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the instance of the class that contains the type of the element that this current + + object includes and facets for that type. + + + The instance of the class that contains the type of the element that this current + + object includes and facets for that type. + + + + + Represents the Edm Complex Type. This can be used to configure complex types + from a conceptual-space model-based convention. Complex types are not supported in the store model. + + + + + Creates a new instance of the type. + + The name of the complex type. + The namespace of the complex type. + The dataspace to which the complex type belongs to. + Members of the complex type. + Metadata properties to be associated with the instance. + Thrown if either name, namespace or members argument is null. + + A new instance a the type. + + + The newly created will be read only. + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the list of properties for this . + + + A collection of type that contains the list of properties for this + + . + + + + + Class representing the Documentation associated with an item + + + + + Initializes a new Documentation instance. + + A summary string. + A long description string. + + + + Returns the summary for this . + + + The summary for this . + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the summary for this . + + + The summary for this . + + + + + Gets the long description for this . + + + The long description for this . + + + + + Gets a value indicating whether this object contains only a null or an empty + + and a + + . + + + true if this object contains only a null or an empty + + and a + + ; otherwise, false. + + + + + Class for representing a function + + + + + Adds a parameter to this function. + + The parameter to be added. + + + + The factory method for constructing the object. + + The name of the function. + The namespace of the function. + The namespace the function belongs to. + Additional function attributes and properties. + Metadata properties that will be added to the function. Can be null. + + A new, read-only instance of the type. + + + + + Gets the built-in type kind for this . + + + One of the enumeration values of the enumeration. + + + + Returns the full name (namespace plus name) of this type. + The full name of the type. + + + + Gets the parameters of this . + + + A collection of type that contains the parameters of this + + . + + + + + Gets the return parameter of this . + + + A object that represents the return parameter of this + + . + + + + + Gets the return parameters of this . + + + A collection of type that represents the return parameters of this + + . + + + + Gets the store function name attribute of this function. + + + Gets the parameter type semantics attribute of this function. + + + Gets the aggregate attribute of this function. + + + + Gets a value indicating whether built in attribute is present on this function. + + + true if the attribute is present; otherwise, false. + + + + + Gets a value indicating whether this instance is from the provider manifest. + + + true if this instance is from the provider manifest; otherwise, false. + + + + + Gets a value indicating whether the is a niladic function (a function that accepts no arguments). + + + true if the function is niladic; otherwise, false. + + + + Gets whether this instance is mapped to a function or to a stored procedure. + true if this instance is mapped to a function; false if this instance is mapped to a stored procedure. + + + Gets a query in the language that is used by the database management system or storage model. + + A string value in the syntax used by the database management system or storage model that contains the query or update statement of the + + . + + + + Gets or sets the schema associated with the function. + The schema associated with the function. + + + + In conceptual-space, EdmProperty represents a property on an Entity. + In store-space, EdmProperty represents a column in a table. + + + + Creates a new primitive property. + The newly created property. + The name of the property. + The type of the property. + + + Creates a new enum property. + The newly created property. + The name of the property. + The type of the property. + + + Creates a new complex property. + The newly created property. + The name of the property. + The type of the property. + + + + Creates a new instance of EdmProperty type. + + Name of the property. + + Property + + A new instance of EdmProperty type + + + Sets the metadata properties. + The metadata properties to be set. + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets a value indicating whether this can have a null value. + + + Nullability in the conceptual model and store model is a simple indication of whether or not + the property is considered nullable. Nullability in the object model is more complex. + When using convention based mapping (as usually happens with POCO entities), a property in the + object model is considered nullable if and only if the underlying CLR type is nullable and + the property is not part of the primary key. + When using attribute based mapping (usually used with entities that derive from the EntityObject + base class), a property is considered nullable if the IsNullable flag is set to true in the + attribute. This flag can + be set to true even if the underlying type is not nullable, and can be set to false even if the + underlying type is nullable. The latter case happens as part of default code generation when + a non-nullable property in the conceptual model is mapped to a nullable CLR type such as a string. + In such a case, the Entity Framework treats the property as non-nullable even though the CLR would + allow null to be set. + There is no good reason to set a non-nullable CLR type as nullable in the object model and this + should not be done even though the attribute allows it. + + + true if this can have a null value; otherwise, false. + + Thrown if the setter is called when the EdmProperty instance is in ReadOnly state + + + Gets the type name of the property. + The type name of the property. + + + + Gets the default value for this . + + + The default value for this . + + Thrown if the setter is called when the EdmProperty instance is in ReadOnly state + + + Gets whether the property is a collection type property. + true if the property is a collection type property; otherwise, false. + + + Gets whether this property is a complex type property. + true if this property is a complex type property; otherwise, false. + + + Gets whether this property is a primitive type. + true if this property is a primitive type; otherwise, false. + + + Gets whether this property is an enumeration type property. + true if this property is an enumeration type property; otherwise, false. + + + Gets whether this property is an underlying primitive type. + true if this property is an underlying primitive type; otherwise, false. + + + Gets the complex type information for this property. + The complex type information for this property. + + + Gets the primitive type information for this property. + The primitive type information for this property. + + + Gets the enumeration type information for this property. + The enumeration type information for this property. + + + Gets the underlying primitive type information for this property. + The underlying primitive type information for this property. + + + Gets or sets the concurrency mode for the property. + The concurrency mode for the property. + + + Gets or sets the database generation method for the database column associated with this property + The store generated pattern for the property. + + + Gets or sets the kind of collection for this model. + The kind of collection for this model. + + + Gets whether the maximum length facet is constant for the database provider. + true if the facet is constant; otherwise, false. + + + Gets or sets the maximum length of the property. + The maximum length of the property. + + + Gets or sets whether this property uses the maximum length supported by the provider. + true if this property uses the maximum length supported by the provider; otherwise, false. + + + Gets whether the fixed length facet is constant for the database provider. + true if the facet is constant; otherwise, false. + + + Gets or sets whether the length of this property is fixed. + true if the length of this property is fixed; otherwise, false. + + + Gets whether the Unicode facet is constant for the database provider. + true if the facet is constant; otherwise, false. + + + Gets or sets whether this property is a Unicode property. + true if this property is a Unicode property; otherwise, false. + + + Gets whether the precision facet is constant for the database provider. + true if the facet is constant; otherwise, false. + + + Gets or sets the precision of this property. + The precision of this property. + + + Gets whether the scale facet is constant for the database provider. + true if the facet is constant; otherwise, false. + + + Gets or sets the scale of this property. + The scale of this property. + + + + Class for representing an entity container + + + + + Creates an entity container with the specified name and data space. + + The entity container name. + The entity container data space. + Thrown if the name argument is null. + Thrown if the name argument is empty string. + + + + Returns an object by using the specified name for the entity set. + + + An object that represents the entity set that has the specified name. + + The name of the entity set that is searched for. + true to perform the case-insensitive search; otherwise, false. + + + + Returns an object by using the specified name for the entity set. + + true if there is an entity set that matches the search criteria; otherwise, false. + The name of the entity set that is searched for. + true to perform the case-insensitive search; otherwise, false. + + When this method returns, contains an object. If there is no entity set, this output parameter contains null. + + + + + Returns a object by using the specified name for the relationship set. + + + An object that represents the relationship set that has the specified name. + + The name of the relationship set that is searched for. + true to perform the case-insensitive search; otherwise, false. + + + + Returns a object by using the specified name for the relationship set. + + true if there is a relationship set that matches the search criteria; otherwise, false. + The name of the relationship set that is searched for. + true to perform the case-insensitive search; otherwise, false. + + When this method returns, contains a object. + + + + + Returns the name of this . + + + The name of this . + + + + + Adds the specified entity set to the container. + + The entity set to add. + + + Removes a specific entity set from the container. + The entity set to remove. + + + + Adds a function import to the container. + + The function import to add. + + + + The factory method for constructing the EntityContainer object. + + The name of the entity container to be created. + DataSpace in which this entity container belongs to. + Entity sets that will be included in the new container. Can be null. + Functions that will be included in the new container. Can be null. + Metadata properties to be associated with the instance. + The EntityContainer object. + Thrown if the name argument is null or empty string. + The newly created EntityContainer will be read only. + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the name of this . + + + The name of this . + + + + + Gets a list of entity sets and association sets that this + + includes. + + + A object that contains a list of entity sets and association sets that this + + includes. + + + + Gets the association sets for this entity container. + The association sets for this entity container . + + + Gets the entity sets for this entity container. + The entity sets for this entity container . + + + + Specifies a collection of elements. Each function contains the details of a stored procedure that exists in the database or equivalent CommandText that is mapped to an entity and its properties. + + + A that contains + + elements. + + + + + Represents a particular usage of a structure defined in EntityType. In the conceptual-model, this represents a set that can + query and persist entities. In the store-model it represents a table. + From a store-space model-convention it can be used to configure + table name with property and table schema with property. + + + + + The factory method for constructing the EntitySet object. + + The name of the EntitySet. + The db schema. Can be null. + The db table. Can be null. + + The provider specific query that should be used to retrieve data for this EntitySet. Can be null. + + The entity type of the entities that this entity set type contains. + + Metadata properties that will be added to the newly created EntitySet. Can be null. + + The EntitySet object. + Thrown if the name argument is null or empty string. + The newly created EntitySet will be read only. + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the entity type of this . + + + An object that represents the entity type of this + + . + + + + + Represents an enumeration member. + + + + Overriding System.Object.ToString to provide better String representation for this type. + The name of this enumeration member. + + + + Creates a read-only EnumMember instance. + + The name of the enumeration member. + The value of the enumeration member. + Metadata properties to be associated with the enumeration member. + The newly created EnumMember instance. + name is null or empty. + + + + Creates a read-only EnumMember instance. + + The name of the enumeration member. + The value of the enumeration member. + Metadata properties to be associated with the enumeration member. + The newly created EnumMember instance. + name is null or empty. + + + + Creates a read-only EnumMember instance. + + The name of the enumeration member. + The value of the enumeration member. + Metadata properties to be associated with the enumeration member. + The newly created EnumMember instance. + name is null or empty. + + + + Creates a read-only EnumMember instance. + + The name of the enumeration member. + The value of the enumeration member. + Metadata properties to be associated with the enumeration member. + The newly created EnumMember instance. + name is null or empty. + + + + Creates a read-only EnumMember instance. + + The name of the enumeration member. + The value of the enumeration member. + Metadata properties to be associated with the enumeration member. + The newly created EnumMember instance. + name is null or empty. + + + Gets the kind of this type. + + + Gets the name of this enumeration member. + + + Gets the value of this enumeration member. + + + + Class for representing a Facet object + This object is Immutable (not just set to readonly) and + some parts of the system are depending on that behavior + + + + + Returns the name of this . + + + The name of this . + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the description of this . + + + The object that represents the description of this + + . + + + + + Gets the name of this . + + + The name of this . + + + + + Gets the type of this . + + + The object that represents the type of this + + . + + + + + Gets the value of this . + + + The value of this . + + Thrown if the Facet instance is in ReadOnly state + + + Gets a value indicating whether the value of the facet is unbounded. + true if the value of the facet is unbounded; otherwise, false. + + + + Class for representing a FacetDescription object + + + + Returns the name of this facet. + The name of this facet. + + + Gets the name of this facet. + The name of this facet. + + + Gets the type of this facet. + + An object that represents the type of this facet. + + + + Gets the minimum value for this facet. + The minimum value for this facet. + + + Gets the maximum value for this facet. + The maximum value for this facet. + + + Gets the default value of a facet with this facet description. + The default value of a facet with this facet description. + + + Gets a value indicating whether the value of this facet is a constant. + true if this facet is a constant; otherwise, false. + + + Gets a value indicating whether this facet is a required facet. + true if this facet is a required facet; otherwise, false. + + + + Class representing a function parameter + + + + + Returns the name of this . + + + The name of this . + + + + + The factory method for constructing the object. + + The name of the parameter. + The EdmType of the parameter. + + The of the parameter. + + + A new, read-only instance of the type. + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the mode of this . + + + One of the values. + + Thrown if the FunctionParameter instance is in ReadOnly state + + + + Gets the name of this . + + + The name of this . + + + + + Gets the instance of the class that contains both the type of the parameter and facets for the type. + + + A object that contains both the type of the parameter and facets for the type. + + + + Gets the type name of this parameter. + The type name of this parameter. + + + Gets whether the max length facet is constant for the database provider. + true if the facet is constant; otherwise, false. + + + Gets the maximum length of the parameter. + The maximum length of the parameter. + + + Gets whether the parameter uses the maximum length supported by the database provider. + true if parameter uses the maximum length supported by the database provider; otherwise, false. + + + Gets whether the precision facet is constant for the database provider. + true if the facet is constant; otherwise, false. + + + Gets the precision value of the parameter. + The precision value of the parameter. + + + Gets whether the scale facet is constant for the database provider. + true if the facet is constant; otherwise, false. + + + Gets the scale value of the parameter. + The scale value of the parameter. + + + + Gets the on which this parameter is declared. + + + A object that represents the function on which this parameter is declared. + + + + + Class representing a metadata attribute for an item + + + + + The factory method for constructing the MetadataProperty object. + + The name of the metadata property. + The type usage of the metadata property. + The value of the metadata property. + The MetadataProperty object. + + Thrown is null. + + The newly created MetadataProperty will be read only. + + + + Creates a metadata annotation having the specified name and value. + + The annotation name. + The annotation value. + A MetadataProperty instance representing the created annotation. + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the name of this . + + + The name of this . + + + + + Gets the value of this . + + + The value of this . + + Thrown if the MetadataProperty instance is in readonly state + + + + Gets the instance of the class that contains both the type of this + + and facets for the type. + + + A object that contains both the type of this + + and facets for the type. + + Thrown if the MetadataProperty instance is in readonly state + + + + Gets the value of this . + + + The value of this . + + + + + Gets a boolean that indicates whether the metadata property is an annotation. + + + + + Represent the edm navigation property class + + + + + Where the given navigation property is on the dependent end of a referential constraint, + returns the foreign key properties. Otherwise, returns an empty set. We will return the members in the order + of the principal end key properties. + + A collection of the foreign key properties. + + + + Creates a NavigationProperty instance from the specified parameters. + + The name of the navigation property. + Specifies the navigation property type and its facets. + The relationship type for the navigation. + The source end member in the navigation. + The target end member in the navigation. + The metadata properties of the navigation property. + The newly created NavigationProperty instance. + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + Gets the relationship type that this navigation property operates on. + The relationship type that this navigation property operates on. + Thrown if the NavigationProperty instance is in ReadOnly state + + + Gets the "to" relationship end member of this navigation. + The "to" relationship end member of this navigation. + Thrown if the NavigationProperty instance is in ReadOnly state + + + Gets the "from" relationship end member in this navigation. + The "from" relationship end member in this navigation. + Thrown if the NavigationProperty instance is in ReadOnly state + + + + Represents the list of possible actions for delete operation + + + + + no action + + + + + Cascade to other ends + + + + + The enumeration defining the mode of a parameter + + + + + In parameter + + + + + Out parameter + + + + + Both in and out parameter + + + + + Return Parameter + + + + + Class representing a primitive type + + + + + Returns the equivalent of this + + . + + + For example if this instance is nvarchar and it's + base type is Edm String then the return type is Edm String. + If the type is actually already a model type then the + return type is "this". + + + An object that is an equivalent of this + + . + + + + Returns the list of primitive types. + + A collection of type that contains the list of primitive types. + + + + + Returns the equivalent of a + + . + + + An object that is an equivalent of a specified + + . + + + A value of type . + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets a enumeration value that indicates a primitive type of this + + . + + + A enumeration value that indicates a primitive type of this + + . + + + + + Gets the list of facet descriptions for this . + + + A collection of type that contains the list of facet descriptions for this + + . + + + + + Returns an equivalent common language runtime (CLR) type of this + + . Note that the + + property always returns a non-nullable type value. + + + A object that represents an equivalent common language runtime (CLR) type of this + + . + + + + + Primitive Types as defined by EDM + + + + + Binary Type Kind + + + + + Boolean Type Kind + + + + + Byte Type Kind + + + + + DateTime Type Kind + + + + + Decimal Type Kind + + + + + Double Type Kind + + + + + Guid Type Kind + + + + + Single Type Kind + + + + + SByte Type Kind + + + + + Int16 Type Kind + + + + + Int32 Type Kind + + + + + Int64 Type Kind + + + + + String Type Kind + + + + + Time Type Kind + + + + + DateTimeOffset Type Kind + + + + + Geometry Type Kind + + + + + Geography Type Kind + + + + + Geometric point type kind + + + + + Geometric linestring type kind + + + + + Geometric polygon type kind + + + + + Geometric multi-point type kind + + + + + Geometric multi-linestring type kind + + + + + Geometric multi-polygon type kind + + + + + Geometric collection type kind + + + + + Geographic point type kind + + + + + Geographic linestring type kind + + + + + Geographic polygon type kind + + + + + Geographic multi-point type kind + + + + + Geographic multi-linestring type kind + + + + + Geographic multi-polygon type kind + + + + + Geographic collection type kind + + + + + This class represents a referential constraint between two entities specifying the "to" and "from" ends of the relationship. + + + + + Constructs a new constraint on the relationship + + role from which the relationship originates + role to which the relationship is linked/targeted to + properties on entity type of to role which take part in the constraint + properties on entity type of from role which take part in the constraint + Argument Null exception if any of the arguments is null + + + + Returns the combination of the names of the + + and the + + . + + + The combination of the names of the + + and the + + . + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the "from role" that takes part in this + + . + + + A object that represents the "from role" that takes part in this + + . + + Thrown if value passed into setter is null + Thrown if the ReferentialConstraint instance is in ReadOnly state + + + + Gets the "to role" that takes part in this . + + + A object that represents the "to role" that takes part in this + + . + + Thrown if value passed into setter is null + Thrown if the ReferentialConstraint instance is in ReadOnly state + + + + Gets the list of properties for the "from role" on which this + + is defined. + + + A collection of type that contains the list of properties for "from role" on which this + + is defined. + + + + + Gets the list of properties for the "to role" on which this + + is defined. + + + A collection of type that contains the list of properties for the "to role" on which this + + is defined. + + + + + Class representing a ref type + + + + + + + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the entity type referenced by this . + + + An object that represents the entity type referenced by this + + . + + + + + Represents the multiplicity information about the end of a relationship type + + + + + Lower Bound is Zero and Upper Bound is One + + + + + Both lower bound and upper bound is one + + + + + Lower bound is zero and upper bound is null + + + + + Represents the Edm Row Type + + + + + The factory method for constructing the object. + + Properties of the row type object. + Metadata properties that will be added to the function. Can be null. + + A new, read-only instance of the object. + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the list of properties on this . + + + A collection of type that contains the list of properties on this + + . + + + + Gets a collection of the properties defined by the current type. + A collection of the properties defined by the current type. + + + + Class representing a type information for an item + + + + + Factory method for creating a TypeUsage with specified EdmType and facets + + EdmType for which to create a type usage + facets to be copied into the new TypeUsage + new TypeUsage instance + + + + Creates a object with the specified conceptual model type. + + + A object with the default facet values for the specified + + . + + + A for which the + + object is created. + + + + + Creates a object to describe a string type by using the specified facet values. + + + A object describing a string type by using the specified facet values. + + + A for which the + + object is created. + + true to set the character-encoding standard of the string type to Unicode; otherwise, false. + true to set the character-encoding standard of the string type to Unicode; otherwise, false. + true to set the length of the string type to fixed; otherwise, false. + + + + Creates a object to describe a string type by using the specified facet values and unbounded MaxLength. + + + A object describing a string type by using the specified facet values and unbounded MaxLength. + + + A for which the + + object is created. + + true to set the character-encoding standard of the string type to Unicode; otherwise, false. + true to set the length of the string type to fixed; otherwise, false + + + + Creates a object to describe a binary type by using the specified facet values. + + + A object describing a binary type by using the specified facet values. + + + A for which the + + object is created. + + true to set the length of the binary type to fixed; otherwise, false. + The maximum length of the binary type. + + + + Creates a object to describe a binary type by using the specified facet values. + + + A object describing a binary type by using the specified facet values. + + + A for which the + + object is created. + + true to set the length of the binary type to fixed; otherwise, false. + + + + Creates a object of the type that the parameters describe. + + + A object. + + + The simple type that defines the units of measurement of the DateTime object. + + + The degree of granularity of the DateTimeOffset in fractions of a second, based on the number of decimal places supported. For example a precision of 3 means the granularity supported is milliseconds. + + + + + Creates a object of the type that the parameters describe. + + + A object. + + The simple type that defines the units of measurement of the offset. + + The degree of granularity of the DateTimeOffset in fractions of a second, based on the number of decimal places supported. For example a precision of 3 means the granularity supported is milliseconds. + + + + + Creates a object of the type that the parameters describe. + + + A object. + + + The simple type that defines the units of measurement of the DateTime object. + + + The degree of granularity of the DateTimeOffset in fractions of a second, based on the number of decimal places supported. For example a precision of 3 means the granularity supported is milliseconds. + + + + + Creates a object to describe a decimal type by using the specified facet values. + + + A object describing a decimal type by using the specified facet values. + + + A for which the + + object is created. + + + The precision of the decimal type as type . + + + The scale of the decimal type as type . + + + + + Creates a object to describe a decimal type with unbounded precision and scale facet values. + + + A object describing a decimal type with unbounded precision and scale facet values. + + + A for which the + + object is created. + + + + + Checks whether this is a subtype of the specified + + . + + + true if this is a subtype of the specified + + ; otherwise, false. + + + The object to be checked. + + + + + Returns the full name of the type described by this . + + + The full name of the type described by this as string. + + + + + Gets the built-in type kind for this . + + + A object that represents the built-in type kind for this + + . + + + + + Gets the type information described by this . + + + An object that represents the type information described by this + + . + + + + + Gets the list of facets for the type that is described by this + + . + + + A collection of type that contains the list of facets for the type that is described by this + + . + + + + + Returns a Model type usage for a provider type + + Model (CSpace) type usage + + + + Do not perform any extension check + + + + + Check the extension against a specific value + + + + + Check the extension against the set of acceptable extensions + + + + + Runtime Metadata Workspace + + + + + Initializes a new instance of the class. + + + + + Constructs a with loaders for all item collections () + needed by EF except the o/c mapping which will be created automatically based on the given o-space and c-space + loaders. The item collection delegates are executed lazily when a given collection is used for the first + time. It is acceptable to pass a delegate that returns null if the collection will never be used, but this + is rarely done, and any attempt by EF to use the collection in such cases will result in an exception. + + Delegate to return the c-space (CSDL) item collection. + Delegate to return the s-space (SSDL) item collection. + Delegate to return the c/s mapping (MSL) item collection. + Delegate to return the o-space item collection. + + + + Constructs a with loaders for all item collections () + that come from traditional EDMX mapping. Default o-space and o/c mapping collections will be used. + The item collection delegates are executed lazily when a given collection is used for the first + time. It is acceptable to pass a delegate that returns null if the collection will never be used, but this + is rarely done, and any attempt by EF to use the collection in such cases will result in an exception. + + Delegate to return the c-space (CSDL) item collection. + Delegate to return the s-space (SSDL) item collection. + Delegate to return the c/s mapping (MSL) item collection. + + + + Initializes a new instance of the class using the specified paths and assemblies. + + The paths to workspace metadata. + The names of assemblies used to construct workspace. + + + + Creates an configured to use the + + data space. + + The created parser object. + + + + Creates a new bound to this metadata workspace based on the specified query expression. + + + A new with the specified expression as it's + + property. + + + A that defines the query. + + + If + + is null + + + If + + contains metadata that cannot be resolved in this metadata workspace + + + If + + is not structurally valid because it contains unresolvable variable references + + + + + Gets items. + + + The items. + + + The from which to retrieve items. + + + + Registers the item collection with each associated data model. + The output parameter collection that needs to be filled up. + + + Loads metadata from the given assembly. + The assembly from which the metadata will be loaded. + + + Loads metadata from the given assembly. + The assembly from which the metadata will be loaded. + The delegate for logging the load messages. + + + Returns an item by using the specified identity and the data model. + The item that matches the given identity in the specified data model. + The identity of the item. + The conceptual model in which the item is searched. + The type returned by the method. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + Returns an item by using the specified identity and the data model. + true if there is an item that matches the search criteria; otherwise, false. + The conceptual model on which the item is searched. + The conceptual model on which the item is searched. + + When this method returns, contains a object. This parameter is passed uninitialized. + + The type returned by the method. + + + Returns an item by using the specified identity and the data model. + The item that matches the given identity in the specified data model. + The identity of the item. + true to perform the case-insensitive search; otherwise, false. + The conceptual model on which the item is searched. + The type returned by the method. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + Returns an item by using the specified identity and the data model. + true if there is an item that matches the search criteria; otherwise, false. + The conceptual model on which the item is searched. + true to perform the case-insensitive search; otherwise, false. + The conceptual model on which the item is searched. + + When this method returns, contains a object. This parameter is passed uninitialized. + + The type returned by the method. + + + Gets all the items in the specified data model. + + A collection of type that contains all the items in the specified data model. + + The conceptual model for which the list of items is needed. + The type returned by the method. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + + Returns an object by using the specified type name, namespace name, and data model. + + + An object that represents the type that matches the given type name and the namespace name in the specified data model. If there is no matched type, this method returns null. + + The name of the type. + The namespace of the type. + The conceptual model on which the type is searched. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + + Returns an object by using the specified type name, namespace name, and data model. + + true if there is a type that matches the search criteria; otherwise, false. + The name of the type. + The namespace of the type. + The conceptual model on which the type is searched. + + When this method returns, contains an object. This parameter is passed uninitialized. + + + + + Returns an object by using the specified type name, namespace name, and data model. + + + An object. + + The name of the type. + The namespace of the type. + true to perform the case-insensitive search; otherwise, false. + The conceptual model on which the type is searched. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + + Returns an object by using the specified type name, namespace name, and data model. + + true if there is a type that matches the search criteria; otherwise, false. + The name of the type. + The namespace of the type. + true to perform the case-insensitive search; otherwise, false. + The conceptual model on which the type is searched. + + When this method returns, contains an object. This parameter is passed uninitialized. + + + + + Returns an object by using the specified entity container name and the data model. + + If there is no entity container, this method returns null; otherwise, it returns the first entity container. + The name of the entity container. + The conceptual model on which the entity container is searched. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + + Returns an object by using the specified entity container name and the data model. + + true if there is an entity container that matches the search criteria; otherwise, false. + The name of the entity container. + The conceptual model on which the entity container is searched. + + When this method returns, contains an object. If there is no entity container, this output parameter contains null; otherwise, it returns the first entity container. This parameter is passed uninitialized. + + + + + Returns an object by using the specified entity container name and the data model. + + If there is no entity container, this method returns null; otherwise, it returns the first entity container. + The name of the entity container. + true to perform the case-insensitive search; otherwise, false. + The conceptual model on which the entity container is searched. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + + Returns an object by using the specified entity container name and the data model. + + true if there is an entity container that matches the search criteria; otherwise, false. + The name of the entity container. + true to perform the case-insensitive search; otherwise, false. + The conceptual model on which the entity container is searched. + + When this method returns, contains an object. If there is no entity container, this output parameter contains null; otherwise, it returns the first entity container. This parameter is passed uninitialized. + + + + Returns all the overloads of the functions by using the specified name, namespace name, and data model. + + A collection of type that contains all the functions that match the specified name in a given namespace and a data model. + + The name of the function. + The namespace of the function. + The conceptual model in which the functions are searched. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + Returns all the overloads of the functions by using the specified name, namespace name, and data model. + + A collection of type that contains all the functions that match the specified name in a given namespace and a data model. + + The name of the function. + The namespace of the function. + The conceptual model in which the functions are searched. + true to perform the case-insensitive search; otherwise, false. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + Returns the list of primitive types in the specified data model. + + A collection of type that contains all the primitive types in the specified data model. + + The data model for which you need the list of primitive types. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + Gets all the items in the specified data model. + + A collection of type that contains all the items in the specified data model. + + The conceptual model for which the list of items is needed. + Thrown if the space is not a valid space. Valid space is either C, O, CS or OCSpace + + + + Tests the retrieval of . + + true if the retrieval was successful; otherwise, false. + + The from which to attempt retrieval of + + . + + When this method returns, contains the item collection. This parameter is passed uninitialized. + + + + Returns a object that represents the object space type that matches the type supplied by the parameter edmSpaceType . + + + A object that represents the Object space type. If there is no matched type, this method returns null. + + + A object that represents the + + . + + + + + Returns a object via the out parameter objectSpaceType that represents the type that matches the + + supplied by the parameter edmSpaceType . + + true if there is a type that matches the search criteria; otherwise, false. + + A object that represents the + + . + + + When this method returns, contains a object that represents the Object space type. This parameter is passed uninitialized. + + + + + Returns a object that represents the object space type that matches the type supplied by the parameter edmSpaceType . + + + A object that represents the Object space type. If there is no matched type, this method returns null. + + + A object that represents the + + . + + + + + Returns a object via the out parameter objectSpaceType that represents the type that matches the + + supplied by the parameter edmSpaceType . + + true if there is a type that matches the search criteria; otherwise, false. + + A object that represents the + + . + + + When this method returns, contains a object that represents the Object space type. This parameter is passed uninitialized. + + + + + Returns a object that represents the + + that matches the type supplied by the parameter objectSpaceType . + + + A object that represents the + + . If there is no matched type, this method returns null. + + + A that supplies the type in the object space. + + + + + Returns a object via the out parameter edmSpaceType that represents the + + that matches the type supplied by the parameter objectSpaceType . + + true if there is a type that matches the search criteria; otherwise, false. + + A object that represents the object space type. + + + When this method returns, contains a object that represents the + + . This parameter is passed uninitialized. + + + + + Returns a object that represents the + + that matches the type supplied by the parameter objectSpaceType . + + + A object that represents the + + . If there is no matched type, this method returns null. + + + A that supplies the type in the object space. + + + + + Returns a object via the out parameter edmSpaceType that represents the + + that matches the type supplied by the parameter objectSpaceType . + + true on success, false on failure. + + A object that represents the object space type. + + + When this method returns, contains a object that represents the + + . This parameter is passed uninitialized. + + + + Clears all the metadata cache entries. + + + Gets original value members from an entity set and entity type. + The original value members from an entity set and entity type. + The entity set from which to retrieve original values. + The entity type of which to retrieve original values. + + + + Returns members of a given / + + for which original values are needed when modifying an entity. + + + The s for which original value is required. + + + An belonging to the C-Space. + + + An that participates in the given + + . + + true if entities may be updated partially; otherwise, false. + + + + The Max EDM version thats going to be supported by the runtime. + + + + + Class for representing a collection of items for the object layer. + Most of the implementation for actual maintenance of the collection is + done by ItemCollection + + + + + Initializes a new instance of the class. + + + + Loads metadata from the given assembly. + The assembly from which the metadata will be loaded. + + + Loads metadata from the given assembly. + The assembly from which the metadata will be loaded. + The EDM metadata source for the O space metadata. + The delegate to which log messages are sent. + + + Loads metadata from the specified assembly. + The assembly from which the metadata will be loaded. + The EDM metadata source for the O space metadata. + + + Returns a collection of primitive type objects. + A collection of primitive type objects. + + + + Returns the CLR type that corresponds to the supplied by the objectSpaceType parameter. + + The CLR type of the OSpace argument. + + A that represents the object space type. + + + + + Returns a CLR type corresponding to the supplied by the objectSpaceType parameter. + + true if there is a type that matches the search criteria; otherwise, false. + + A that represents the object space type. + + The CLR type. + + + The method returns the underlying CLR type for the specified OSpace type argument. If the DataSpace of the parameter is not OSpace, an ArgumentException is thrown. + The CLR type of the OSpace argument. + The OSpace type to look up. + + + Returns the underlying CLR type for the specified OSpace enum type argument. If the DataSpace of the parameter is not OSpace, the method returns false and sets the out parameter to null. + true on success, false on failure + The OSpace enum type to look up + The CLR enum type of the OSpace argument + + + Returns all the items of the specified type from this item collection. + + A collection of type that contains all items of the specified type. + + The type returned by the method. + + + + The enumeration defining the type semantics used to resolve function overloads. + These flags are defined in the provider manifest per function definition. + + + + + Allow Implicit Conversion between given and formal argument types (default). + + + + + Allow Type Promotion between given and formal argument types. + + + + + Use strict Equivalence only. + + + + + Class for representing a collection of items in Store space. + + + + + Initializes a new instance of the class using the specified XMLReader. + + The XMLReader used to create metadata. + + + Initializes a new instances of the class. + The model of the . + + + + Initializes a new instance of the class using the specified file paths. + + The file paths used to create metadata. + + + + Returns a collection of the objects. + + + A object that represents the collection of the + + objects. + + + + + Factory method that creates a . + + + SSDL artifacts to load. Must not be null. + + + Paths to SSDL artifacts. Used in error messages. Can be null in which case + the base Uri of the XmlReader will be used as a path. + + + Custom resolver. Currently used to resolve DbProviderServices implementation. If null + the default resolver will be used. + + + The collection of errors encountered while loading. + + + instance if no errors encountered. Otherwise null. + + + + Gets the provider factory of the StoreItemCollection. + The provider factory of the StoreItemCollection. + + + Gets the provider manifest of the StoreItemCollection. + The provider manifest of the StoreItemCollection. + + + Gets the manifest token of the StoreItemCollection. + The manifest token of the StoreItemCollection. + + + Gets the invariant name of the StoreItemCollection. + The invariant name of the StoreItemCollection. + + + Gets the version of the store schema for this collection. + The version of the store schema for this collection. + + + + This exception is thrown when a requested object is not found in the store. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a specialized error message. + + The message that describes the error. + + + + Initializes a new instance of class that uses a specified error message and a reference to the inner exception. + + The message that describes the error. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Caches an ELinq query + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg6 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg7 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg8 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg9 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg10 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg11 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg12 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg13 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg14 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg15 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg6 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg7 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg8 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg9 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg10 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg11 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg12 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg13 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg14 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg6 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg7 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg8 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg9 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg10 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg11 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg12 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg13 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg6 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg7 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg8 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg9 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg10 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg11 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg12 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg6 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg7 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg8 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg9 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg10 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg11 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg6 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg7 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg8 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg9 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg10 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg6 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg7 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg8 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg9 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg6 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg7 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg8 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg6 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg7 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg6 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg5 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg4 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg3 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg2 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + Represents the type of the parameter that has to be passed in when executing the delegate returned by this method. TArg1 must be a primitive type. + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + Creates a new delegate that represents the compiled LINQ to Entities query. + + , a generic delegate that represents the compiled LINQ to Entities query. + + The lambda expression to compile. + + A type derived from . + + + The type T of the query results returned by executing the delegate returned by the + + method. + + + + + The values currently assigned to the properties of an entity. + + + + + Provides access to the original values of object data. The DbUpdatableDataRecord implements methods that allow updates to the original values of an object. + + + + Retrieves the field value as a Boolean. + The field value as a Boolean. + The ordinal of the field. + + + Retrieves the field value as a byte. + The field value as a byte. + The ordinal of the field. + + + Retrieves the field value as a byte array. + The number of bytes copied. + The ordinal of the field. + The index at which to start copying data. + The destination buffer where data is copied. + The index in the destination buffer where copying will begin. + The number of bytes to copy. + + + Retrieves the field value as a char. + The field value as a char. + The ordinal of the field. + + + Retrieves the field value as a char array. + The number of characters copied. + The ordinal of the field. + The index at which to start copying data. + The destination buffer where data is copied. + The index in the destination buffer where copying will begin. + The number of characters to copy. + + + + Retrieves the field value as an . + + + The field value as an . + + The ordinal of the field. + + + + Retrieves the field value as a + + + The field value as a . + + The ordinal of the field. + + + Retrieves the name of the field data type. + The name of the field data type. + The ordinal of the field. + + + + Retrieves the field value as a . + + + The field value as a . + + The ordinal of the field. + + + Retrieves the field value as a decimal. + The field value as a decimal. + The ordinal of the field. + + + Retrieves the field value as a double. + The field value as a double. + The ordinal of the field. + + + Retrieves the type of a field. + The field type. + The ordinal of the field. + + + Retrieves the field value as a float. + The field value as a float. + The ordinal of the field. + + + + Retrieves the field value as a . + + + The field value as a . + + The ordinal of the field. + + + + Retrieves the field value as an . + + + The field value as an . + + The ordinal of the field. + + + + Retrieves the field value as an . + + + The field value as an . + + The ordinal of the field. + + + + Retrieves the field value as an . + + + The field value as an . + + The ordinal of the field. + + + Retrieves the name of a field. + The name of the field. + The ordinal of the field. + + + Retrieves the ordinal of a field by using the name of the field. + The ordinal of the field. + The name of the field. + + + Retrieves the field value as a string. + The field value. + The ordinal of the field. + + + Retrieves the value of a field. + The field value. + The ordinal of the field. + + + Retrieves the value of a field. + The field value. + The ordinal of the field. + + + Populates an array of objects with the field values of the current record. + The number of field values returned. + An array of objects to store the field values. + + + + Returns whether the specified field is set to . + + + true if the field is set to ; otherwise false. + + The ordinal of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Sets field values in a record. + The number of the fields that were set. + The values of the field. + + + + Sets a field to the value. + + The ordinal of the field. + + + + Retrieves a field value as a . + + + A field value as a . + + The ordinal of the field. + + + + Retrieves the field value as a . + + + The field value as a . + + The ordinal of the field. + + + Sets the value of a field in a record. + The ordinal of the field. + The value of the field. + + + Gets the number of fields in the record. + An integer value that is the field count. + + + Returns a value that has the given field ordinal. + The value that has the given field ordinal. + The ordinal of the field. + + + Gets a value that has the given field name. + The field value. + The name of the field. + + + Gets data record information. + + A object. + + + + + This is the interface that represent the minimum interface required + to be an entity in ADO.NET. + + + + + This class contains the common methods need for an date object. + + + + + Public constant name used for change tracking + Providing this definition allows users to use this constant instead of + hard-coding the string. This helps to ensure the property name is correct + and allows faster comparisons in places where we are looking for this specific string. + Users can still use the case-sensitive string directly instead of the constant, + it will just be slightly slower on comparison. + Including the dash (-) character around the name ensures that this will not conflict with + a real data property, because -EntityKey- is not a valid identifier name + + + + + Raises the event. + + The name of the changed property. + + + + Raises the event. + + The name of the property changing. + + + Returns the minimum date time value supported by the data source. + + A value that is the minimum date time that is supported by the data source. + + + + Raises an event that is used to report that a property change is pending. + The name of the changing property. + + + Raises an event that is used to report that a property change has occurred. + The name for the changed property. + + + Returns a complex type for the specified property. + + Unlike most of the other helper methods in this class, this one is not static + because it references the SetValidValue for complex objects, which is also not static + because it needs a reference to this. + + A complex type object for the property. + A complex object that inherits from complex object. + The name of the complex property that is the complex object. + Indicates whether the type supports null values. + Indicates whether the type is initialized. + The type of the complex object being requested. + + + Determines whether the specified byte arrays contain identical values. + true if both arrays are of the same length and contain the same byte values or if both arrays are null; otherwise, false. + The first byte array value to compare. + The second byte array to compare. + + + Returns a copy of the current byte value. + + A copy of the current value. + + The current byte array value. + + + + Makes sure the value being set for a property is valid. + + + The value being validated. + + The value passed into the property setter. + Flag indicating if this property is allowed to be null. + The name of the property that is being validated. + If value is null for a non nullable value. + + + + Makes sure the value being set for a property is valid. + + + A value being set. + + The value being set. + Indicates whether the property is nullable. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + The Boolean value. + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + The Boolean value. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + A that is set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value that is set. + + The value that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + A value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + Makes sure the Single value being set for a property is valid. + + The value being set. + + + The value. + + The name of the property that is being validated. + + + Makes sure the Single value being set for a property is valid. + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + Name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The nullable value being set. + + + The nullable value. + + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + Makes sure the UInt16 value being set for a property is valid. + The nullable UInt16 value being set. + The nullable UInt16 value. + The name of the property that is being validated. + + + Makes sure the UInt16 value being set for a property is valid. + The nullable UInt16 value being set. + The nullable UInt16 value. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + Makes sure the UInt32 value being set for a property is valid. + The nullable UInt32 value being set. + The nullable UInt32 value. + The name of the property that is being validated. + + + Makes sure the UInt32 value being set for a property is valid. + The nullable UInt32 value being set. + The nullable UInt32 value. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + + The value being set. + + + The value. + + + + + Makes sure the value being set for a property is valid. + + The nullable UInt64 value being set. + The nullable UInt64 value. + The name of the property that is being validated. + + + + Makes sure the value being set for a property is valid. + + The nullable UInt64 value being set. + The nullable UInt64 value. + + + Validates that the property is not null, and throws if it is. + The validated property. + The string value to be checked. + Flag indicating if this property is allowed to be null. + The name of the property that is being validated. + The string value is null for a non-nullable string. + + + Validates that the property is not null, and throws if it is. + + The validated value. + + The string value to be checked. + Flag indicating if this property is allowed to be null. + + + Validates that the property is not null, and throws if it is. + + The value being set. + + + The value to be checked. + + Flag indicating if this property is allowed to be null. + Name of the property that is being validated. + The value is null for a non-nullable property. + + + Validates that the property is not null, and throws if it is. + + The value being set. + + + value to be checked. + + Flag indicating if this property is allowed to be null. + The value is null for a non-nullable property. + + + Validates that the property is not null, and throws if it is. + + The value being set. + + + value to be checked. + + Flag indicating if this property is allowed to be null. + The name of the property that is being validated. + The value is null for a non-nullable property. + + + Validates that the property is not null, and throws if it is. + + The value being set. + + + The value to be checked. + + Flag indicating if this property is allowed to be null. + The value is null for a non-nullable property. + + + Sets a complex object for the specified property. + A complex type that derives from complex object. + The original complex object for the property, if any. + The complex object is being set. + The complex property that is being set to the complex object. + The type of the object being replaced. + + + Verifies that a complex object is not null. + The complex object being validated. + The complex object that is being validated. + The complex property on the parent object that is associated with complexObject . + The type of the complex object being verified. + + + + Notification that a property has been changed. + + + The PropertyChanged event can indicate all properties on the + object have changed by using either a null reference + (Nothing in Visual Basic) or String.Empty as the property name + in the PropertyChangedEventArgs. + + + + + Notification that a property is about to be changed. + + + The PropertyChanging event can indicate all properties on the + object are changing by using either a null reference + (Nothing in Visual Basic) or String.Empty as the property name + in the PropertyChangingEventArgs. + + + + Notifies the change tracker that a property change is pending on a complex object. + The name of the changing property. + property is null. + + + Notifies the change tracker that a property of a complex object has changed. + The name of the changed property. + property is null. + + + + Attribute for complex properties + Implied default AttributeUsage properties Inherited=True, AllowMultiple=False, + The metadata system expects this and will only look at the first of each of these attributes, even if there are more. + + + + + Base attribute for properties mapped to store elements. + Implied default AttributeUsage properties Inherited=True, AllowMultiple=False, + The metadata system expects this and will only look at the first of each of these attributes, even if there are more. + + + + + attribute for complex types + + + + + Base attribute for schematized types + + + + The name of the type in the conceptual schema that maps to the class to which this attribute is applied. + + A that is the name. + + + + The namespace name of the entity object type or complex type in the conceptual schema that maps to this type. + + A that is the namespace name. + + + + + Attribute identifying the Edm base class + + + + + Attribute indicating an enum type. + + + + + Attribute identifying the Ends defined for a RelationshipSet + Implied default AttributeUsage properties Inherited=True, AllowMultiple=False, + The metadata system expects this and will only look at the first of each of these attributes, even if there are more. + + + + + Initializes a new instance of the + + class. + + The namespace name of the relationship property. + The name of the relationship. The relationship name is not namespace qualified. + The role name at the other end of the relationship. + + + The namespace name of the navigation property. + + A that is the namespace name. + + + + Gets the unqualified relationship name. + The relationship name. + + + Gets the role name at the other end of the relationship. + The target role name is specified by the Role attribute of the other End element in the association that defines this relationship in the conceptual model. For more information, see Association (EDM). + + + + Defines a relationship between two entity types based on an association in the conceptual model. + + + + + Creates an instance of the class. + + The name of the namespace for the association in which this entity participates. + The name of a relationship in which this entity participates. + Name of the role for the type at one end of the association. + + A value of that indicates the multiplicity at one end of the association, such as one or many. + + The type of the entity at one end of the association. + Name of the role for the type at the other end of the association. + + A value of that indicates the multiplicity at the other end of the association, such as one or many. + + The type of the entity at the other end of the association. + + + + Initializes a new instance of the + + class. + + The name of the namespace for the association in which this entity participates. + The name of a relationship in which this entity participates. + Name of the role for the type at one end of the association. + + A value of that indicates the multiplicity at one end of the association, such as one or many. + + The type of the entity at one end of the association. + Name of the role for the type at the other end of the association. + + A value of that indicates the multiplicity at the other end of the association, such as one or many. + + The type of the entity at the other end of the association. + A value that indicates whether the relationship is based on the foreign key value. + + + The namespace for the relationship. + + A that is the namespace for the relationship. + + + + Name of the relationship. + + A that is the name of a relationship that is defined by this + + . + + + + Name of the role at one end of the relationship. + + A that is the name of the role. + + + + Multiplicity at one end of the relationship. + + A value that indicates the multiplicity. + + + + Type of the entity at one end of the relationship. + + A that is the type of the object at this end of the association. + + + + Name of the role at the other end of the relationship. + + A that is the name of the role. + + + + Multiplicity at the other end of the relationship. + + A value that indicates the multiplicity. + + + + Type of the entity at the other end of the relationship. + + A that is the type of the object t the other end of the association. + + + + Gets a Boolean value that indicates whether the relationship is based on the foreign key value. + true if the relationship is based on the foreign key value; otherwise false. + + + + Attribute for scalar properties in an IEntity. + Implied default AttributeUsage properties Inherited=True, AllowMultiple=False, + The metadata system expects this and will only look at the first of each of these attributes, even if there are more. + + + + Gets or sets the value that indicates whether the property can have a null value. + The value that indicates whether the property can have a null value. + + + Gets or sets the value that indicates whether the property is part of the entity key. + The value that indicates whether the property is part of the entity key. + + + + Attribute for static types + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a unique value for each model referenced by the assembly. + + + Setting this parameter to a unique value for each model file in a Visual Basic + assembly will prevent the following error: + "'System.Data.Entity.Core.Objects.DataClasses.EdmSchemaAttribute' cannot be specified more than once in this project, even with identical parameter values." + + A string that is a unique GUID value for the model in the assembly. + + + + Collection of entities modeling a particular EDM construct + which can either be all entities of a particular type or + entities participating in a particular relationship. + + The type of entities in this collection. + + + + Base class for EntityCollection and EntityReference + + + + + Represents one end of a relationship. + + + + Loads the related object or objects into this related end with the default merge option. + + + Asynchronously loads the related object or objects into this related end with the default merge option. + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + + Loads the related object or objects into the related end with the specified merge option. + + The to use when merging objects into an existing + . + + + + Asynchronously loads the related object or objects into the related end with the specified merge option. + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The to use when merging objects into an existing + . + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + + Adds an object to the related end. + + An object to add to the collection. entity must implement + + . + + + + Adds an object to the related end. + An object to add to the collection. + + + Removes an object from the collection of objects at the related end. + + true if entity was successfully removed, false if entity was not part of the + + . + + + The object to remove from the collection. entity must implement + + . + + + + Removes an object from the collection of objects at the related end. + + true if entity was successfully removed; false if entity was not part of the + + . + + An object to remove from the collection. + + + Defines a relationship between two attached objects. + + The object being attached. entity must implement + + . + + + + Defines a relationship between two attached objects. + The object being attached. + + + + Returns an that represents the objects that belong to the related end. + + + An that represents the objects that belong to the related end. + + + + + Returns an that iterates through the collection of related objects. + + + An that iterates through the collection of related objects. + + + + + Gets or sets a value indicating whether the entity (for an or all entities + in the collection (for an have been loaded from the database. + + + Loading the related entities from the database either using lazy-loading, as part of a query, or explicitly + with one of the Load methods will set the IsLoaded flag to true. + IsLoaded can be explicitly set to true to prevent the related entities from being lazy-loaded. + This can be useful if the application has caused a subset of related entities to be loaded + and wants to prevent any other entities from being loaded automatically. + Note that explicit loading using will load all related entities from the database + regardless of whether or not IsLoaded is true. + When any related entity is detached the IsLoaded flag is reset to false indicating that not all related entities + are now loaded. + + + True if all the related entities are loaded or the IsLoaded has been explicitly set to true; otherwise false. + + + + Gets the name of the relationship in which this related end participates. + + The name of the relationship in which this is participating. The relationship name is not namespace qualified. + + + + Gets the role name at the source end of the relationship. + The role name at the source end of the relationship. + + + Gets the role name at the target end of the relationship. + The role name at the target end of the relationship. + + + Returns a reference to the metadata for the related end. + + A object that contains metadata for the end of a relationship. + + + + + Returns an that represents the objects that belong to the related end. + + + An that represents the objects that belong to the related end. + + + + + Loads the related object or objects into the related end with the default merge option. + + + When the source object was retrieved by using a query + and the is not + or the related objects are already loaded + or when the source object is not attached to the + or when the source object is being tracked but is in the + or state + or the + used for + is . + + + + + Asynchronously loads the related object or objects into the related end with the default merge option. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + When the source object was retrieved by using a query + and the is not + or the related objects are already loaded + or when the source object is not attached to the + or when the source object is being tracked but is in the + or state + or the + used for + is . + + + + + Loads an object or objects from the related end with the specified merge option. + + + The to use when merging objects into an existing + . + + + When the source object was retrieved by using a query + and the + is not + or the related objects are already loaded + or when the source object is not attached to the + or when the source object is being tracked but is in the + or state + or the + used for + is . + + + + + Asynchronously loads an object or objects from the related end with the specified merge option. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The to use when merging objects into an existing + . + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + When the source object was retrieved by using a query + and the + is not + or the related objects are already loaded + or when the source object is not attached to the + or when the source object is being tracked but is in the + or state + or the + used for + is . + + + + + Attaches an entity to the related end. This method works in exactly the same way as Attach(object). + It is maintained for backward compatibility with previous versions of IRelatedEnd. + + The entity to attach to the related end + + Thrown when + + is null. + + Thrown when the entity cannot be related via the current relationship end. + + + + Attaches an entity to the related end. If the related end is already filled + or partially filled, this merges the existing entities with the given entity. The given + entity is not assumed to be the complete set of related entities. + Owner and all entities passed in must be in Unchanged or Modified state. + Deleted elements are allowed only when the state manager is already tracking the relationship + instance. + + The entity to attach to the related end + + Thrown when + + is null. + + Thrown when the entity cannot be related via the current relationship end. + + + + Adds an entity to the related end. This method works in exactly the same way as Add(object). + It is maintained for backward compatibility with previous versions of IRelatedEnd. + + Entity instance to add to the related end + + + + Adds an entity to the related end. If the owner is + attached to a cache then the all the connected ends are + added to the object cache and their corresponding relationships + are also added to the ObjectStateManager. The RelatedEnd of the + relationship is also fixed. + + Entity instance to add to the related end + + + + Removes an entity from the related end. This method works in exactly the same way as Remove(object). + It is maintained for backward compatibility with previous versions of IRelatedEnd. + + Entity instance to remove from the related end + Returns true if the entity was successfully removed, false if the entity was not part of the RelatedEnd. + + + + Removes an entity from the related end. If owner is + attached to a cache, marks relationship for deletion and if + the relationship is composition also marks the entity for deletion. + + Entity instance to remove from the related end + Returns true if the entity was successfully removed, false if the entity was not part of the RelatedEnd. + + + + Returns an that iterates through the collection of related objects. + + + An that iterates through the collection of related objects. + + + + + Used internally to deserialize entity objects along with the + + instances. + + The serialized stream. + + + Occurs when a change is made to a related end. + + + Gets the name of the relationship in which this related end participates. + + The name of the relationship in which this participates. The relationship name is not namespace qualified. + + + + Gets the role name at the source end of the relationship. + + A that is the role name. + + + + Gets the role name at the target end of the relationship. + + A that is the role name. + + + + Gets a reference to the metadata for the related end. + + A object that contains metadata for the end of a relationship. + + + + + + + + Initializes a new instance of the class. + + + + + Returns the collection as an used for data binding. + + + An of entity objects. + + + + Loads related objects into the collection, using the specified merge option. + + Specifies how the objects in this collection should be merged with the objects that might have been returned from previous queries against the same + + . + + + + + + + Defines relationships between an object and a collection of related objects in an object context. + + Loads related entities into the local collection. If the collection is already filled + or partially filled, merges existing entities with the given entities. The given + entities are not assumed to be the complete set of related entities. + Owner and all entities passed in must be in Unchanged or Modified state. We allow + deleted elements only when the state manager is already tracking the relationship + instance. + + Collection of objects in the object context that are related to the source object. + entities collection is null. + + The source object or an object in the entities collection is null or is not in an + + or state.-or-The relationship cannot be defined based on the EDM metadata. This can occur when the association in the conceptual schema does not support a relationship between the two types. + + + + Defines a relationship between two attached objects in an object context. + The object being attached. + When the entity is null. + + When the entity cannot be related to the source object. This can occur when the association in the conceptual schema does not support a relationship between the two types.-or-When either object is null or is not in an + + or state. + + + + Adds an object to the collection. + + An object to add to the collection. entity must implement + + . + + entity is null. + + + Removes an object from the collection and marks the relationship for deletion. + true if item was successfully removed; otherwise, false. + The object to remove from the collection. + entity object is null. + The entity object is not attached to the same object context.-or-The entity object does not have a valid relationship manager. + + + Returns an enumerator that is used to iterate through the objects in the collection. + + An that iterates through the set of values cached by + + . + + + + + Returns an enumerator that is used to iterate through the set of values cached by + + . + + + An that iterates through the set of values cached by + + . + + + + Removes all entities from the collection. + + + Determines whether a specific object exists in the collection. + + true if the object is found in the ; otherwise, false. + + + The object to locate in the . + + + + Copies all the contents of the collection to an array, starting at the specified index of the target array. + The array to copy to. + The zero-based index in the array at which copying begins. + + + Used internally to serialize entity objects. + The streaming context. + + + Used internally to deserialize entity objects. + The streaming context. + + + Returns an object query that, when it is executed, returns the same set of objects that exists in the current collection. + + An that represents the entity collection. + + + When the object is in an state + or when the object is in a + state with a + other than + . + + + + Gets the number of objects that are contained in the collection. + + The number of elements that are contained in the + + . + + + + + Gets a value that indicates whether the + + is read-only. + + Always returns false. + + + + IListSource.ContainsListCollection implementation. Always returns false. + This means that the IList we return is the one which contains our actual data, + it is not a list of collections. + + + + + This is the class is the basis for all perscribed EntityObject classes. + + + + + Interface that defines an entity containing a key. + + + + + Gets or sets the for instances of entity types that implement this interface. + + + If an object is being managed by a change tracker, it is expected that + IEntityChangeTracker methods EntityMemberChanging and EntityMemberChanged will be + used to report changes on EntityKey. This allows the change tracker to validate the + EntityKey's new value and to verify if the change tracker is in a state where it can + allow updates to the EntityKey. + + + The for instances of entity types that implement this interface. + + + + + Minimum interface that a data class must implement in order to be managed by a change tracker. + + + + + Gets or sets the used to report changes. + + + The used to report changes. + + + + + Interface that a data class must implement if exposes relationships + + + + Returns the relationship manager that manages relationships for an instance of an entity type. + + Classes that expose relationships must implement this property + by constructing and setting RelationshipManager in their constructor. + The implementation of this property should use the static method RelationshipManager.Create + to create a new RelationshipManager when needed. Once created, it is expected that this + object will be stored on the entity and will be provided through this property. + + + The for this entity. + + + + + Used by the ObjectStateManager to attach or detach this EntityObject to the cache. + + Reference to the ObjectStateEntry that contains this entity + + + Notifies the change tracker that a property change is pending. + The name of the changing property. + property is null. + + + Notifies the change tracker that a property has changed. + The name of the changed property. + property is null. + + + Gets the entity state of the object. + + The of this object. + + + + Gets or sets the key for this object. + + The for this object. + + + + + Returns the container for the lazily created relationship + navigation property objects, collections and refs. + + + + + This interface is implemented by a change tracker and is used by data classes to report changes + + + + Notifies the change tracker of a pending change to a property of an entity type. + The name of the property that is changing. + + + Notifies the change tracker that a property of an entity type has changed. + The name of the property that has changed. + + + Notifies the change tracker of a pending change to a complex property. + The name of the top-level entity property that is changing. + The complex type that contains the property that is changing. + The name of the property that is changing on complex type. + + + Notifies the change tracker that a property of a complex type has changed. + The name of the complex property of the entity type that has changed. + The complex type that contains the property that changed. + The name of the property that changed on complex type. + + + Gets current state of a tracked object. + + An that is the state of the tracked object.For more information, see Identity Resolution, State Managment, and Change Tracking and Tracking Changes in POCO Entities. + + + + + Models a relationship end with multiplicity 1. + + + + Returns the key for the related object. + + Returns the EntityKey of the target entity associated with this EntityReference. + Is non-null in the following scenarios: + (a) Entities are tracked by a context and an Unchanged or Added client-side relationships exists for this EntityReference's owner with the + same RelationshipName and source role. This relationship could have been created explicitly by the user (e.g. by setting + the EntityReference.Value, setting this property directly, or by calling EntityCollection.Add) or automatically through span queries. + (b) If the EntityKey was non-null before detaching an entity from the context, it will still be non-null after detaching, until any operation + occurs that would set it to null, as described below. + (c) Entities are detached and the EntityKey is explicitly set to non-null by the user. + (d) Entity graph was created using a NoTracking query with full span + Is null in the following scenarios: + (a) Entities are tracked by a context but there is no Unchanged or Added client-side relationship for this EntityReference's owner with the + same RelationshipName and source role. + (b) Entities are tracked by a context and a relationship exists, but the target entity has a temporary key (i.e. it is Added) or the key + is one of the special keys + (c) Entities are detached and the relationship was explicitly created by the user. + + + An that is the key of the related object. + + + + + Models a relationship end with multiplicity 1. + + The type of the entity being referenced. + + + + Creates a new instance of . + + + The default constructor is required for some serialization scenarios. It should not be used to + create new EntityReferences. Use the GetRelatedReference or GetRelatedEnd methods on the RelationshipManager + class instead. + + + + + Loads the related object for this with the specified merge option. + + + Specifies how the object should be returned if it already exists in the + + . + + + The source of the is null + or a query returned more than one related end + or a query returned zero related ends, and one related end was expected. + + + + + + + Creates a many-to-one or one-to-one relationship between two objects in the object context. + The object being attached. + When the entity is null. + When the entity cannot be related to the current related end. This can occur when the association in the conceptual schema does not support a relationship between the two types. + + + Creates an equivalent object query that returns the related object. + + An that returns the related object. + + + When the object is in an state + or when the object is in a + state with a + other than . + + + + This method is used internally to serialize related entity objects. + The serialized stream. + + + This method is used internally to serialize related entity objects. + The serialized stream. + + + + Gets or sets the related object returned by this + + . + + + The object returned by this . + + + + + Identifies the kind of a relationship + + + + + The relationship is an Association + + + + + Container for the lazily created relationship navigation + property objects (collections and refs). + + + + + Creates a new object. + + + Used by data classes that support relationships. If the change tracker + requests the RelationshipManager property and the data class does not + already have a reference to one of these objects, it calls this method + to create one, then saves a reference to that object. On subsequent accesses + to that property, the data class should return the saved reference. + The reason for using a factory method instead of a public constructor is to + emphasize that this is not something you would normally call outside of a data class. + By requiring that these objects are created via this method, developers should + give more thought to the operation, and will generally only use it when + they explicitly need to get an object of this type. It helps define the intended usage. + + + The requested . + + Reference to the entity that is calling this method. + + + + Returns either an or + + of the correct type for the specified target role in a relationship. + + + representing the + + or + + that was retrieved. + + Name of the relationship in which targetRoleName is defined. The relationship name is not namespace qualified. + Target role to use to retrieve the other end of relationshipName . + relationshipName or targetRoleName is null. + The source type does not match the type of the owner. + targetRoleName is invalid or unable to find the relationship type in the metadata. + + + + Takes an existing EntityReference that was created with the default constructor and initializes it using the provided relationship and target role names. + This method is designed to be used during deserialization only, and will throw an exception if the provided EntityReference has already been initialized, + if the relationship manager already contains a relationship with this name and target role, or if the relationship manager is already attached to a ObjectContext.W + + The relationship name. + The role name of the related end. + + The to initialize. + + + The type of the being initialized. + + + When the provided + is already initialized.-or-When the relationship manager is already attached to an + + or when the relationship manager already contains a relationship with this name and target role. + + + + + Takes an existing EntityCollection that was created with the default constructor and initializes it using the provided relationship and target role names. + This method is designed to be used during deserialization only, and will throw an exception if the provided EntityCollection has already been initialized, + or if the relationship manager is already attached to a ObjectContext. + + The relationship name. + The target role name. + An existing EntityCollection. + Type of the entity represented by targetRoleName + + + + Gets an of related objects with the specified relationship name and target role name. + + + The of related objects. + + Name of the relationship to navigate. The relationship name is not namespace qualified. + Name of the target role for the navigation. Indicates the direction of navigation across the relationship. + + The type of the returned . + + + The specified role returned an instead of an + + . + + + + + Gets the for a related object by using the specified combination of relationship name and target role name. + + + The of a related object. + + Name of the relationship to navigate. The relationship name is not namespace qualified. + Name of the target role for the navigation. Indicates the direction of navigation across the relationship. + + The type of the returned . + + + The specified role returned an instead of an + + . + + + + Returns an enumeration of all the related ends managed by the relationship manager. + + An of objects that implement + + . An empty enumeration is returned when the relationships have not yet been populated. + + + + + Called by Object Services to prepare an for binary serialization with a serialized relationship. + + Describes the source and destination of a given serialized stream, and provides an additional caller-defined context. + + + + Used internally to deserialize entity objects along with the + + instances. + + The serialized stream. + + + + Represents either a entity, entity stub or relationship + + + + + Gets the updatable version of original values of the object associated with this + + . + + The updatable original values of object data. + + + Accepts the current values as original values. + + + Marks an entity as deleted. + + + + Returns the names of an object’s properties that have changed since the last time + + was called. + + + An collection of names as string. + + + + Sets the state of the object or relationship to modify. + If State is not Modified or Unchanged + + + Marks the specified property as modified. + The name of the property. + If State is not Modified or Unchanged + + + Rejects any changes made to the property with the given name since the property was last loaded, attached, saved, or changes were accepted. The orginal value of the property is stored and the property will no longer be marked as modified. + The name of the property to change. + + + Uses DetectChanges to determine whether or not the current value of the property with the given name is different from its original value. Note that this may be different from the property being marked as modified since a property which has not changed can still be marked as modified. + + Note that this property always returns the same result as the modified state of the property for change tracking + proxies and entities that derive from the EntityObject base class. This is because original values are not tracked + for these entity types and hence there is no way to know if the current value is really different from the + original value. + + true if the property has changed; otherwise, false. + The name of the property. + + + + Changes state of the entry to the specified value. + + + The value to set for the + + property of the entry. + + + + Sets the current values of the entry to match the property values of a supplied object. + The detached object that has updated values to apply to the object. currentEntity can also be the object’s entity key. + + + Sets the original values of the entry to match the property values of a supplied object. + The detached object that has original values to apply to the object. originalEntity can also be the object’s entity key. + + + + Used to report that a scalar entity property is about to change + The current value of the specified property is cached when this method is called. + + The name of the entity property that is changing + + + + Used to report that a scalar entity property has been changed + The property value that was cached during EntityMemberChanging is now + added to OriginalValues + + The name of the entity property that has changing + + + + Used to report that a complex property is about to change + The current value of the specified property is cached when this method is called. + + The name of the top-level entity property that is changing + The complex object that contains the property that is changing + The name of the property that is changing on complexObject + + + + Used to report that a complex property has been changed + The property value that was cached during EntityMemberChanging is now added to OriginalValues + + The name of the top-level entity property that has changed + The complex object that contains the property that changed + The name of the property that changed on complexObject + + + + Gets the for the + + . + + + The for the + + . + + + + + Gets the for the object or relationship. + + + The for the object or relationship. + + + + + Gets the state of the . + + + The state of the . + + + + Gets the entity object. + The entity object. + + + Gets the entity key. + The entity key. + + + + Gets a value that indicates whether the represents a relationship. + + + true if the represents a relationship; otherwise, false. + + + + Gets the read-only version of original values of the object or relationship. + The read-only version of original values of the relationship set entry or entity. + + + + Gets the current property values of the object or relationship associated with this + + . + + + A that contains the current values of the object or relationship associated with this + + . + + + + + Gets the instance for the object represented by entry. + + + The object. + + The entry is a stub or represents a relationship + + + + Returns the EntityState from the ObjectStateEntry + + + + + Defines behavior for implementations of IQueryable that allow modifications to the membership of the resulting set. + + Type of entities returned from the queryable. + + + Notifies the set that an object that represents a new entity must be added to the set. + + Depending on the implementation, the change to the set may not be visible in an enumeration of the set + until changes to that set have been persisted in some manner. + + The new object to add to the set. + + + Notifies the set that an object that represents an existing entity must be added to the set. + + Depending on the implementation, the change to the set may not be visible in an enumeration of the set + until changes to that set have been persisted in some manner. + + The existing object to add to the set. + + + Notifies the set that an object that represents an existing entity must be deleted from the set. + + Depending on the implementation, the change to the set may not be visible in an enumeration of the set + until changes to that set have been persisted in some manner. + + The existing object to delete from the set. + + + Notifies the set that an object that represents an existing entity must be detached from the set. + + Depending on the implementation, the change to the set may not be visible in an enumeration of the set + until changes to that set have been persisted in some manner. + + The object to detach from the set. + + + + The different ways that new objects loaded from the database can be merged with existing objects already in memory. + + + + + Will only append new (top level-unique) rows. This is the default behavior. + + + + + Same behavior as LoadOption.OverwriteChanges. + + + + + Same behavior as LoadOption.PreserveChanges. + + + + + Will not modify cache. + + + + + ObjectContext is the top-level object that encapsulates a connection between the CLR and the database, + serving as a gateway for Create, Read, Update, and Delete operations. + + + + + Initializes a new instance of the class with the given connection. During construction, the metadata workspace is extracted from the + + object. + + + An that contains references to the model and to the data source connection. + + The connection is null. + The connection is invalid or the metadata workspace is invalid. + + + + Creates an ObjectContext with the given connection and metadata workspace. + + connection to the store + If set to true the connection is disposed when the context is disposed, otherwise the caller must dispose the connection. + + + + Initializes a new instance of the class with the given connection string and default entity container name. + + The connection string, which also provides access to the metadata information. + The connectionString is null. + The connectionString is invalid or the metadata workspace is not valid. + + + + Initializes a new instance of the class with a given connection string and entity container name. + + The connection string, which also provides access to the metadata information. + The name of the default entity container. When the defaultContainerName is set through this method, the property becomes read-only. + The connectionString is null. + The connectionString , defaultContainerName , or metadata workspace is not valid. + + + + Initializes a new instance of the class with a given connection and entity container name. + + + An that contains references to the model and to the data source connection. + + The name of the default entity container. When the defaultContainerName is set through this method, the property becomes read-only. + The connection is null. + The connection , defaultContainerName , or metadata workspace is not valid. + + + Accepts all changes made to objects in the object context. + + + Adds an object to the object context. + Represents the entity set name, which may optionally be qualified by the entity container name. + + The to add. + + The entity parameter is null or the entitySetName does not qualify. + + + Explicitly loads an object related to the supplied object by the specified navigation property and using the default merge option. + The entity for which related objects are to be loaded. + The name of the navigation property that returns the related objects to be loaded. + + The entity is in a , + + or state or the entity is attached to another instance of + + . + + + + Explicitly loads an object that is related to the supplied object by the specified navigation property and using the specified merge option. + The entity for which related objects are to be loaded. + The name of the navigation property that returns the related objects to be loaded. + + The value to use when you load the related objects. + + + The entity is in a , + + or state or the entity is attached to another instance of + + . + + + + Explicitly loads an object that is related to the supplied object by the specified LINQ query and by using the default merge option. + The type of the entity. + The source object for which related objects are to be loaded. + A LINQ expression that defines the related objects to be loaded. + selector does not supply a valid input parameter. + selector is null. + + The entity is in a , + + or state or the entity is attached to another instance of + + . + + + + Explicitly loads an object that is related to the supplied object by the specified LINQ query and by using the specified merge option. + The type of the entity. + The source object for which related objects are to be loaded. + A LINQ expression that defines the related objects to be loaded. + + The value to use when you load the related objects. + + selector does not supply a valid input parameter. + selector is null. + + The entity is in a , + + or state or the entity is attached to another instance of + + . + + + + Applies property changes from a detached object to an object already attached to the object context. + The name of the entity set to which the object belongs. + The detached object that has property updates to apply to the original object. + When entitySetName is null or an empty string or when changed is null. + + When the from entitySetName does not match the + + of the object + + or when the entity is in a state other than + + or + + or the original object is not attached to the context. + + When the type of the changed object is not the same type as the original object. + + + + Copies the scalar values from the supplied object into the object in the + + that has the same key. + + The updated object. + The name of the entity set to which the object belongs. + + The detached object that has property updates to apply to the original object. The entity key of currentEntity must match the + + property of an entry in the + + . + + The entity type of the object. + entitySetName or current is null. + + The from entitySetName does not match the + + of the object + + or the object is not in the + + or it is in a + + state or the entity key of the supplied object is invalid. + + entitySetName is an empty string. + + + + Copies the scalar values from the supplied object into set of original values for the object in the + + that has the same key. + + The updated object. + The name of the entity set to which the object belongs. + + The detached object that has original values to apply to the object. The entity key of originalEntity must match the + + property of an entry in the + + . + + The type of the entity object. + entitySetName or original is null. + + The from entitySetName does not match the + + of the object + + or an + + for the object cannot be found in the + + or the object is in an + + or a + + state or the entity key of the supplied object is invalid or has property changes. + + entitySetName is an empty string. + + + Attaches an object or object graph to the object context in a specific entity set. + Represents the entity set name, which may optionally be qualified by the entity container name. + + The to attach. + + The entity is null. + + Invalid entity set or the object has a temporary key or the object has an + + and the + + does not match with the entity set passed in as an argument of the method or the object does not have an + + and no entity set is provided or any object from the object graph has a temporary + + or any object from the object graph has an invalid + + (for example, values in the key do not match values in the object) or the entity set could not be found from a given entitySetName name and entity container name or any object from the object graph already exists in another state manager. + + + + Attaches an object or object graph to the object context when the object has an entity key. + The object to attach. + The entity is null. + Invalid entity key. + + + Creates the entity key for a specific object, or returns the entity key if it already exists. + + The of the object. + + The fully qualified name of the entity set to which the entity object belongs. + The object for which the entity key is being retrieved. + When either parameter is null. + When entitySetName is empty or when the type of the entity object does not exist in the entity set or when the entitySetName is not fully qualified. + When the entity key cannot be constructed successfully based on the supplied parameters. + + + + Creates a new instance that is used to query, add, modify, and delete objects of the specified entity type. + + + The new instance. + + + Entity type of the requested . + + + The property is not set on the + + or the specified type belongs to more than one entity set. + + + + + Creates a new instance that is used to query, add, modify, and delete objects of the specified type and with the specified entity set name. + + + The new instance. + + + Name of the entity set for the returned . The string must be qualified by the default container name if the + + property is not set on the + + . + + + Entity type of the requested . + + + The from entitySetName does not match the + + of the object + + or the + + property is not set on the + + and the name is not qualified as part of the entitySetName parameter or the specified type belongs to more than one entity set. + + + + + Creates an in the current object context by using the specified query string. + + + An of the specified type. + + The query string to be executed. + Parameters to pass to the query. + + The entity type of the returned . + + The queryString or parameters parameter is null. + + + Marks an object for deletion. + + An object that specifies the entity to delete. The object can be in any state except + + . + + + + Removes the object from the object context. + + Object to be detached. Only the entity is removed; if there are any related objects that are being tracked by the same + + , those will not be detached automatically. + + The entity is null. + + The entity is not associated with this (for example, was newly created and not associated with any context yet, or was obtained through some other context, or was already detached). + + + + + Finalizes an instance of the class. + + + + Releases the resources used by the object context. + + + + Releases the resources used by the object context. + + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Returns an object that has the specified entity key. + + An that is an instance of an entity type. + + The key of the object to be found. + The key parameter is null. + + The object is not found in either the or the data source. + + + + Updates a collection of objects in the object context with data from the database. + + A value that indicates whether + property changes in the object context are overwritten with property values from the database. + + + An collection of objects to refresh. + + collection is null. + refreshMode is not valid. + collection is empty or an object is not attached to the context. + + + Updates an object in the object context with data from the database. + + A value that indicates whether + property changes in the object context are overwritten with property values from the database. + + The object to be refreshed. + entity is null. + refreshMode is not valid. + entity is not attached to the context. + + + Asynchronously updates a collection of objects in the object context with data from the database. + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A value that indicates whether + property changes in the object context are overwritten with property values from the database. + + + An collection of objects to refresh. + + + A task that represents the asynchronous operation. + + collection is null. + refreshMode is not valid. + collection is empty or an object is not attached to the context. + + + Asynchronously updates a collection of objects in the object context with data from the database. + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A value that indicates whether + property changes in the object context are overwritten with property values from the database. + + + An collection of objects to refresh. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + collection is null. + refreshMode is not valid. + collection is empty or an object is not attached to the context. + + + Asynchronously updates an object in the object context with data from the database. + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A value that indicates whether + property changes in the object context are overwritten with property values from the database. + + The object to be refreshed. + + A task that represents the asynchronous operation. + + entity is null. + refreshMode is not valid. + entity is not attached to the context. + + + Asynchronously updates an object in the object context with data from the database. + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A value that indicates whether + property changes in the object context are overwritten with property values from the database. + + The object to be refreshed. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + entity is null. + refreshMode is not valid. + entity is not attached to the context. + + + Persists all updates to the database and resets change tracking in the object context. + + The number of state entries written to the underlying database. This can include + state entries for entities and/or relationships. Relationship state entries are created for + many-to-many relationships and relationships where there is no foreign key property + included in the entity class (often referred to as independent associations). + + An optimistic concurrency violation has occurred while saving changes. + + + Asynchronously persists all updates to the database and resets change tracking in the object context. + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous save operation. + The task result contains the number of state entries written to the underlying database. This can include + state entries for entities and/or relationships. Relationship state entries are created for + many-to-many relationships and relationships where there is no foreign key property + included in the entity class (often referred to as independent associations). + + An optimistic concurrency violation has occurred while saving changes. + + + Asynchronously persists all updates to the database and resets change tracking in the object context. + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous save operation. + The task result contains the number of state entries written to the underlying database. This can include + state entries for entities and/or relationships. Relationship state entries are created for + many-to-many relationships and relationships where there is no foreign key property + included in the entity class (often referred to as independent associations). + + An optimistic concurrency violation has occurred while saving changes. + + + Persists all updates to the database and optionally resets change tracking in the object context. + + This parameter is needed for client-side transaction support. If true, the change tracking on all objects is reset after + + finishes. If false, you must call the + method after . + + + The number of state entries written to the underlying database. This can include + state entries for entities and/or relationships. Relationship state entries are created for + many-to-many relationships and relationships where there is no foreign key property + included in the entity class (often referred to as independent associations). + + An optimistic concurrency violation has occurred while saving changes. + + + Persists all updates to the database and optionally resets change tracking in the object context. + + A value that determines the behavior of the operation. + + + The number of state entries written to the underlying database. This can include + state entries for entities and/or relationships. Relationship state entries are created for + many-to-many relationships and relationships where there is no foreign key property + included in the entity class (often referred to as independent associations). + + An optimistic concurrency violation has occurred while saving changes. + + + Asynchronously persists all updates to the database and optionally resets change tracking in the object context. + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A value that determines the behavior of the operation. + + + A task that represents the asynchronous save operation. + The task result contains the number of state entries written to the underlying database. This can include + state entries for entities and/or relationships. Relationship state entries are created for + many-to-many relationships and relationships where there is no foreign key property + included in the entity class (often referred to as independent associations). + + An optimistic concurrency violation has occurred while saving changes. + + + Asynchronously persists all updates to the database and optionally resets change tracking in the object context. + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A value that determines the behavior of the operation. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous save operation. + The task result contains the number of state entries written to the underlying database. This can include + state entries for entities and/or relationships. Relationship state entries are created for + many-to-many relationships and relationships where there is no foreign key property + included in the entity class (often referred to as independent associations). + + An optimistic concurrency violation has occurred while saving changes. + + + + Ensures that changes are synchronized with changes in all objects that are tracked by the + + . + + + + Returns an object that has the specified entity key. + true if the object was retrieved successfully. false if the key is temporary, the connection is null, or the value is null. + The key of the object to be found. + When this method returns, contains the object. + Incompatible metadata for key . + key is null. + + + + Executes a stored procedure or function that is defined in the data source and mapped in the conceptual model, with the specified parameters. Returns a typed + + . + + + An for the data that is returned by the stored procedure. + + The name of the stored procedure or function. The name can include the container name, such as <Container Name>.<Function Name>. When the default container name is known, only the function name is required. + + An array of objects. If output parameters are used, + their values will not be available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + The entity type of the returned when the function is executed against the data source. This type must implement + + . + + function is null or empty or function is not found. + The entity reader does not support this function or there is a type mismatch on the reader and the function . + + + + Executes the given stored procedure or function that is defined in the data source and expressed in the conceptual model, with the specified parameters, and merge option. Returns a typed + + . + + + An for the data that is returned by the stored procedure. + + The name of the stored procedure or function. The name can include the container name, such as <Container Name>.<Function Name>. When the default container name is known, only the function name is required. + + The to use when executing the query. + + + An array of objects. If output parameters are used, + their values will not be available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + The entity type of the returned when the function is executed against the data source. This type must implement + + . + + function is null or empty or function is not found. + The entity reader does not support this function or there is a type mismatch on the reader and the function . + + + + Executes the given function on the default container. + + Element type for function results. + + Name of function. May include container (e.g. ContainerName.FunctionName) or just function name when DefaultContainerName is known. + + The options for executing this function. + + The parameter values to use for the function. If output parameters are used, their values + will not be available until the results have been read completely. This is due to the underlying + behavior of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + An object representing the result of executing this function. + If function is null or empty + + If function is invalid (syntax, + does not exist, refers to a function with return type incompatible with T) + + + + Executes a stored procedure or function that is defined in the data source and expressed in the conceptual model; discards any results returned from the function; and returns the number of rows affected by the execution. + The number of rows affected. + The name of the stored procedure or function. The name can include the container name, such as <Container Name>.<Function Name>. When the default container name is known, only the function name is required. + + An array of objects. If output parameters are used, + their values will not be available until the results have been read completely. This is due to the underlying + behavior of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + function is null or empty or function is not found. + The entity reader does not support this function or there is a type mismatch on the reader and the function . + + + Generates an equivalent type that can be used with the Entity Framework for each type in the supplied enumeration. + + An enumeration of objects that represent custom data classes that map to the conceptual model. + + + + Returns all the existing proxy types. + + An of all the existing proxy types. + + + + Returns the entity type of the POCO entity associated with a proxy object of a specified type. + + The of the associated POCO entity. + + + The of the proxy object. + + + + Creates and returns an instance of the requested type . + An instance of the requested type T , or an instance of a derived type that enables T to be used with the Entity Framework. The returned object is either an instance of the requested type or an instance of a derived type that enables the requested type to be used with the Entity Framework. + Type of object to be returned. + + + + Executes an arbitrary command directly against the data source using the existing connection. + The command is specified using the server's native query language, such as SQL. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + If there isn't an existing local transaction a new transaction will be used + to execute the command. + + The command specified in the server's native query language. + The parameter values to use for the query. + The number of rows affected. + + + + Executes an arbitrary command directly against the data source using the existing connection. + The command is specified using the server's native query language, such as SQL. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + Controls the creation of a transaction for this command. + The command specified in the server's native query language. + The parameter values to use for the query. + The number of rows affected. + + + + Asynchronously executes an arbitrary command directly against the data source using the existing connection. + The command is specified using the server's native query language, such as SQL. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + If there isn't an existing local transaction a new transaction will be used + to execute the command. + + The command specified in the server's native query language. + The parameter values to use for the query. + + A task that represents the asynchronous operation. + The task result contains the number of rows affected. + + + + + Asynchronously executes an arbitrary command directly against the data source using the existing connection. + The command is specified using the server's native query language, such as SQL. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + Controls the creation of a transaction for this command. + The command specified in the server's native query language. + The parameter values to use for the query. + + A task that represents the asynchronous operation. + The task result contains the number of rows affected. + + + + + Asynchronously executes an arbitrary command directly against the data source using the existing connection. + The command is specified using the server's native query language, such as SQL. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + If there isn't an existing local transaction a new transaction will be used + to execute the command. + + The command specified in the server's native query language. + + A to observe while waiting for the task to complete. + + The parameter values to use for the query. + + A task that represents the asynchronous operation. + The task result contains the number of rows affected. + + + + + Asynchronously executes an arbitrary command directly against the data source using the existing connection. + The command is specified using the server's native query language, such as SQL. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + Controls the creation of a transaction for this command. + The command specified in the server's native query language. + + A to observe while waiting for the task to complete. + + The parameter values to use for the query. + + A task that represents the asynchronous operation. + The task result contains the number of rows affected. + + + + + Executes a query directly against the data source and returns a sequence of typed results. + The query is specified using the server's native query language, such as SQL. + Results are not tracked by the context, use the overload that specifies an entity set name to track results. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + The element type of the result sequence. + The query specified in the server's native query language. + + The parameter values to use for the query. If output parameters are used, their values will not be + available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + An enumeration of objects of type . + + + + + Executes a query directly against the data source and returns a sequence of typed results. + The query is specified using the server's native query language, such as SQL. + Results are not tracked by the context, use the overload that specifies an entity set name to track results. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + The element type of the result sequence. + The query specified in the server's native query language. + The options for executing this query. + + The parameter values to use for the query. If output parameters are used, their values will not be + available until the results have been read completely. This is due to the underlying behavior of + DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + An enumeration of objects of type . + + + + + Executes a query directly against the data source and returns a sequence of typed results. + The query is specified using the server's native query language, such as SQL. + If an entity set name is specified, results are tracked by the context. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + The element type of the result sequence. + The query specified in the server's native query language. + The entity set of the TResult type. If an entity set name is not provided, the results are not going to be tracked. + + The to use when executing the query. The default is + . + + + The parameter values to use for the query. If output parameters are used, their values will not be + available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + An enumeration of objects of type . + + + + + Executes a query directly against the data source and returns a sequence of typed results. + The query is specified using the server's native query language, such as SQL. + If an entity set name is specified, results are tracked by the context. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + The element type of the result sequence. + The query specified in the server's native query language. + The entity set of the TResult type. If an entity set name is not provided, the results are not going to be tracked. + The options for executing this query. + + The parameter values to use for the query. If output parameters are used, their values will not be + available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + An enumeration of objects of type . + + + + + Asynchronously executes a query directly against the data source and returns a sequence of typed results. + The query is specified using the server's native query language, such as SQL. + Results are not tracked by the context, use the overload that specifies an entity set name to track results. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The element type of the result sequence. + The query specified in the server's native query language. + + The parameter values to use for the query. If output parameters are used, their values will not be + available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + A task that represents the asynchronous operation. + The task result contains an enumeration of objects of type . + + + + + Asynchronously executes a query directly against the data source and returns a sequence of typed results. + The query is specified using the server's native query language, such as SQL. + Results are not tracked by the context, use the overload that specifies an entity set name to track results. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The element type of the result sequence. + The query specified in the server's native query language. + + A to observe while waiting for the task to complete. + + + The parameter values to use for the query. If output parameters are used, their values will not be + available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + A task that represents the asynchronous operation. + The task result contains an enumeration of objects of type . + + + + + Asynchronously executes a query directly against the data source and returns a sequence of typed results. + The query is specified using the server's native query language, such as SQL. + Results are not tracked by the context, use the overload that specifies an entity set name to track results. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The element type of the result sequence. + The query specified in the server's native query language. + The options for executing this query. + + The parameter values to use for the query. If output parameters are used, their values will not be + available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + A task that represents the asynchronous operation. + The task result contains an enumeration of objects of type . + + + + + Asynchronously executes a query directly against the data source and returns a sequence of typed results. + The query is specified using the server's native query language, such as SQL. + Results are not tracked by the context, use the overload that specifies an entity set name to track results. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The element type of the result sequence. + The query specified in the server's native query language. + The options for executing this query. + + A to observe while waiting for the task to complete. + + + The parameter values to use for the query. If output parameters are used, their values will not be + available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + A task that represents the asynchronous operation. + The task result contains an enumeration of objects of type . + + + + + Asynchronously executes a query directly against the data source and returns a sequence of typed results. + The query is specified using the server's native query language, such as SQL. + If an entity set name is specified, results are tracked by the context. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The element type of the result sequence. + The query specified in the server's native query language. + The entity set of the TResult type. If an entity set name is not provided, the results are not going to be tracked. + The options for executing this query. + + The parameter values to use for the query. If output parameters are used, their values will not be + available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + A task that represents the asynchronous operation. + The task result contains an enumeration of objects of type . + + + + + Asynchronously executes a query directly against the data source and returns a sequence of typed results. + The query is specified using the server's native query language, such as SQL. + If an entity set name is specified, results are tracked by the context. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The element type of the result sequence. + The query specified in the server's native query language. + The entity set of the TResult type. If an entity set name is not provided, the results are not going to be tracked. + The options for executing this query. + + A to observe while waiting for the task to complete. + + + The parameter values to use for the query. If output parameters are used, their values will not be + available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + A task that represents the asynchronous operation. + The task result contains an enumeration of objects of type . + + + + + Translates a that contains rows of entity data to objects of the requested entity type. + + The entity type. + An enumeration of objects of type TResult . + + The that contains entity data to translate into entity objects. + + When reader is null. + + + + Translates a that contains rows of entity data to objects of the requested entity type, in a specific entity set, and with the specified merge option. + + The entity type. + An enumeration of objects of type TResult . + + The that contains entity data to translate into entity objects. + + The entity set of the TResult type. + + The to use when translated objects are added to the object context. The default is + + . + + When reader is null. + + When the supplied mergeOption is not a valid value. + + When the supplied entitySetName is not a valid entity set for the TResult type. + + + + Creates the database by using the current data source connection and the metadata in the + + . + + + + Deletes the database that is specified as the database in the current data source connection. + + + + Checks if the database that is specified as the database in the current store connection exists on the store. Most of the actual work + is done by the DbProviderServices implementation for the current store connection. + + true if the database exists; otherwise, false. + + + + Generates a data definition language (DDL) script that creates schema objects (tables, primary keys, foreign keys) for the metadata in the + + . The + + loads metadata from store schema definition language (SSDL) files. + + + A DDL script that creates schema objects for the metadata in the + + . + + + + Gets the connection used by the object context. + + A object that is the connection. + + + When the instance has been disposed. + + + + Gets or sets the default container name. + + A that is the default container name. + + + + Gets the metadata workspace used by the object context. + + The object associated with this + + . + + + + Gets the object state manager used by the object context to track object changes. + + The used by this + + . + + + + Gets or sets the timeout value, in seconds, for all object context operations. A null value indicates that the default value of the underlying provider will be used. + + An value that is the timeout value, in seconds. + + The timeout value is less than 0. + + + Gets the LINQ query provider associated with this object context. + + The instance used by this object context. + + + + + Gets the instance that contains options that affect the behavior of the + + . + + + The instance that contains options that affect the behavior of the + + . + + + + + Returns itself. ObjectContext implements to provide a common + interface for and ObjectContext both of which will return the underlying + ObjectContext. + + + + + Gets the transaction handler in use by this context. May be null if no transaction have been started. + + + The transaction handler. + + + + + Returns the being used for this context. + + + + Occurs when changes are saved to the data source. + + + Occurs when a new entity object is created from data in the data source as part of a query or load operation. + + + + Defines options that affect the behavior of the ObjectContext. + + + + + Gets or sets the value that determines whether SQL functions and commands should be always executed in a transaction. + + + This flag determines whether a new transaction will be started when methods such as + and are executed outside of a transaction. + Note that this does not change the behavior of . + + + The default transactional behavior. + + + + Gets or sets a Boolean value that determines whether related objects are loaded automatically when a navigation property is accessed. + true if lazy loading is enabled; otherwise, false. + + + Gets or sets a Boolean value that determines whether proxy instances are created for custom data classes that are persistence ignorant. + true if proxies are created; otherwise, false. The default value is true. + + + Gets or sets a Boolean value that determines whether to use the legacy PreserveChanges behavior. + true if the legacy PreserveChanges behavior should be used; otherwise, false. + + + Gets or sets a Boolean value that determines whether to use the consistent NullReference behavior. + + If this flag is set to false then setting the Value property of the for an + FK relationship to null when it is already null will have no effect. When this flag is set to true, then + setting the value to null will always cause the FK to be nulled and the relationship to be deleted + even if the value is currently null. The default value is false when using ObjectContext and true + when using DbContext. + + true if the consistent NullReference behavior should be used; otherwise, false. + + + Gets or sets a Boolean value that determines whether to use the C# NullComparison behavior. + + This flag determines whether C# behavior should be exhibited when comparing null values in LinqToEntities. + If this flag is set, then any equality comparison between two operands, both of which are potentially + nullable, will be rewritten to show C# null comparison semantics. As an example: + (operand1 = operand2) will be rewritten as + (((operand1 = operand2) AND NOT (operand1 IS NULL OR operand2 IS NULL)) || (operand1 IS NULL && operand2 IS NULL)) + The default value is false when using . + + true if the C# NullComparison behavior should be used; otherwise, false. + + + + EventArgs for the ObjectMaterialized event. + + + + Gets the entity object that was created. + The entity object that was created. + + + + Delegate for the ObjectMaterialized event. + + The ObjectContext responsable for materializing the object. + EventArgs containing a reference to the materialized object. + + + + This class represents a query parameter at the object layer, which consists + of a Name, a Type and a Value. + + + + + Initializes a new instance of the class with the specified name and type. + + The parameter name. This name should not include the "@" parameter marker that is used in the Entity SQL statements, only the actual name. The first character of the expression must be a letter. Any successive characters in the expression must be either letters, numbers, or an underscore (_) character. + The common language runtime (CLR) type of the parameter. + If the value of either argument is null. + If the value of the name argument is invalid. Parameter names must start with a letter and can only contain letters, numbers, and underscores. + + + + Initializes a new instance of the class with the specified name and value. + + The parameter name. This name should not include the "@" parameter marker that is used in Entity SQL statements, only the actual name. The first character of the expression must be a letter. Any successive characters in the expression must be either letters, numbers, or an underscore (_) character. + The initial value (and inherently, the type) of the parameter. + If the value of either argument is null. + If the value of the name argument is not valid. Parameter names must start with a letter and can only contain letters, numbers, and underscores. + + + Gets the parameter name, which can only be set through a constructor. + The parameter name, which can only be set through a constructor. + + + Gets the parameter type. + + The of the parameter. + + + + Gets or sets the parameter value. + The parameter value. + + + + This class represents a collection of query parameters at the object layer. + + + + + Adds the specified to the collection. + + The parameter to add to the collection. + The parameter argument is null. + + The parameter argument already exists in the collection. This behavior differs from that of most collections that allow duplicate entries. -or-Another parameter with the same name as the parameter argument already exists in the collection. Note that the lookup is case-insensitive. This behavior differs from that of most collections, and is more like that of a + + . + + The type of the parameter is not valid. + + + + Deletes all instances from the collection. + + + + + Checks for the existence of a specified in the collection by reference. + + Returns true if the parameter object was found in the collection; otherwise, false. + + The to find in the collection. + + The parameter argument is null. + + + + Determines whether an with the specified name is in the collection. + + Returns true if a parameter with the specified name was found in the collection; otherwise, false. + The name of the parameter to look for in the collection. This name should not include the "@" parameter marker that is used in the Entity SQL statements, only the actual name. + The name parameter is null. + + + Allows the parameters in the collection to be copied into a supplied array, starting with the object at the specified index. + The array into which to copy the parameters. + The index in the array at which to start copying the parameters. + + + + Removes an instance of an from the collection by reference if it exists in the collection. + + Returns true if the parameter object was found and removed from the collection; otherwise, false. + An object to remove from the collection. + The parameter argument is null. + + + + These methods return enumerator instances, which allow the collection to + be iterated through and traversed. + + An object that can be used to iterate through the collection. + + + Returns an untyped enumerator over the collection. + + An instance. + + + + Gets the number of parameters currently in the collection. + + The number of objects that are currently in the collection. + + + + + This collection is read-write - parameters may be added, removed + and [somewhat] modified at will (value only) - provided that the + implementation the collection belongs to has not locked its parameters + because it's command definition has been prepared. + + + + Provides an indexer that allows callers to retrieve parameters by name. + + The instance. + + The name of the parameter to find. This name should not include the "@" parameter marker that is used in the Entity SQL statements, only the actual name. + No parameter with the specified name is found in the collection. + + + + This class implements untyped queries at the object-layer. + + + + Returns the commands to execute against the data source. + A string that represents the commands that the query executes against the data source. + + + Returns information about the result type of the query. + + A value that contains information about the result type of the query. + + + + Executes the untyped object query with the specified merge option. + + The to use when executing the query. + The default is . + + + An that contains a collection of entity objects returned by the query. + + + + + Asynchronously executes the untyped object query with the specified merge option. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The to use when executing the query. + The default is . + + + A task that represents the asynchronous operation. + The task result contains an an + that contains a collection of entity objects returned by the query. + + + + + Asynchronously executes the untyped object query with the specified merge option. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The to use when executing the query. + The default is . + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains an an + that contains a collection of entity objects returned by the query. + + + + + Returns the collection as an used for data binding. + + + An of entity objects. + + + + Returns an enumerator that iterates through a collection. + + An that can be used to iterate through the collection. + + + + + Returns an which when enumerated will execute the given SQL query against the database. + + The query results. + + + Returns the command text for the query. + A string value. + + + Gets the object context associated with this object query. + + The associated with this + + instance. + + + + Gets or sets how objects returned from a query are added to the object context. + + The query . + + + + + Whether the query is streaming or buffering + + + + Gets the parameter collection for this object query. + + The parameter collection for this . + + + + Gets or sets a value that indicates whether the query plan should be cached. + A value that indicates whether the query plan should be cached. + + + + Gets the result element type for this query instance. + + + + + Gets the expression describing this query. For queries built using + LINQ builder patterns, returns a full LINQ expression tree; otherwise, + returns a constant expression wrapping this query. Note that the + default expression is not cached. This allows us to differentiate + between LINQ and Entity-SQL queries. + + + + + Gets the associated with this query instance. + + + + + ObjectQuery implements strongly-typed queries at the object-layer. + Queries are specified using Entity-SQL strings and may be created by calling + the Entity-SQL-based query builder methods declared by ObjectQuery. + + The result type of this ObjectQuery + + + + Creates a new instance using the specified Entity SQL command as the initial query. + + The Entity SQL query. + + The on which to execute the query. + + + + + Creates a new instance using the specified Entity SQL command as the initial query and the specified merge option. + + The Entity SQL query. + + The on which to execute the query. + + + Specifies how the entities that are retrieved through this query should be merged with the entities that have been returned from previous queries against the same + + . + + + + Executes the object query with the specified merge option. + + The to use when executing the query. + The default is . + + + An that contains a collection of entity objects returned by the query. + + + + + Asynchronously executes the object query with the specified merge option. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The to use when executing the query. + The default is . + + + A task that represents the asynchronous operation. + The task result contains an + that contains a collection of entity objects returned by the query. + + + + + Asynchronously executes the object query with the specified merge option. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + The to use when executing the query. + The default is . + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains an + that contains a collection of entity objects returned by the query. + + + + Specifies the related objects to include in the query results. + + A new with the defined query path. + + Dot-separated list of related objects to return in the query results. + path is null. + path is empty. + + + Limits the query to unique results. + + A new instance that is equivalent to the original instance with SELECT DISTINCT applied. + + + + + This query-builder method creates a new query whose results are all of + the results of this query, except those that are also part of the other + query specified. + + A query representing the results to exclude. + a new ObjectQuery instance. + If the query parameter is null. + + + Groups the query results by the specified criteria. + + A new instance of type + + that is equivalent to the original instance with GROUP BY applied. + + The key columns by which to group the results. + The list of selected properties that defines the projection. + Zero or more parameters that are used in this method. + The query parameter is null or an empty string + or the projection parameter is null or an empty string. + + + + This query-builder method creates a new query whose results are those that + are both in this query and the other query specified. + + A query representing the results to intersect with. + a new ObjectQuery instance. + If the query parameter is null. + + + Limits the query to only results of a specific type. + + A new instance that is equivalent to the original instance with OFTYPE applied. + + + The type of the returned when the query is executed with the applied filter. + + The type specified is not valid. + + + Orders the query results by the specified criteria. + + A new instance that is equivalent to the original instance with ORDER BY applied. + + The key columns by which to order the results. + Zero or more parameters that are used in this method. + The keys or parameters parameter is null. + The key is an empty string. + + + Limits the query results to only the properties that are defined in the specified projection. + + A new instance of type + + that is equivalent to the original instance with SELECT applied. + + The list of selected properties that defines the projection. + Zero or more parameters that are used in this method. + projection is null or parameters is null. + The projection is an empty string. + + + Limits the query results to only the property specified in the projection. + + A new instance of a type compatible with the specific projection. The returned + + is equivalent to the original instance with SELECT VALUE applied. + + The projection list. + An optional set of query parameters that should be in scope when parsing. + + The type of the returned by the + + method. + + projection is null or parameters is null. + The projection is an empty string. + + + Orders the query results by the specified criteria and skips a specified number of results. + + A new instance that is equivalent to the original instance with both ORDER BY and SKIP applied. + + The key columns by which to order the results. + The number of results to skip. This must be either a constant or a parameter reference. + An optional set of query parameters that should be in scope when parsing. + Any argument is null. + keys is an empty string or count is an empty string. + + + Limits the query results to a specified number of items. + + A new instance that is equivalent to the original instance with TOP applied. + + The number of items in the results as a string. + An optional set of query parameters that should be in scope when parsing. + count is null. + count is an empty string. + + + + This query-builder method creates a new query whose results are all of + the results of this query, plus all of the results of the other query, + without duplicates (i.e., results are unique). + + A query representing the results to add. + a new ObjectQuery instance. + If the query parameter is null. + + + + This query-builder method creates a new query whose results are all of + the results of this query, plus all of the results of the other query, + including any duplicates (i.e., results are not necessarily unique). + + A query representing the results to add. + a new ObjectQuery instance. + If the query parameter is null. + + + Limits the query to results that match specified filtering criteria. + + A new instance that is equivalent to the original instance with WHERE applied. + + The filter predicate. + Zero or more parameters that are used in this method. + predicate is null or parameters is null. + The predicate is an empty string. + + + + Returns an which when enumerated will execute the given SQL query against the database. + + The query results. + + + + Returns an which when enumerated will execute the given SQL query against the database. + + The query results. + + + Gets or sets the name of this object query. + + A string value that is the name of this . + + The value specified on set is not valid. + + + + This class implements IEnumerable and IDisposable. Instance of this class + is returned from ObjectQuery.Execute method. + + + + + This constructor is intended only for use when creating test doubles that will override members + with mocked or faked behavior. Use of this constructor for other purposes may result in unexpected + behavior including but not limited to throwing . + + + + + + + Returns an enumerator that iterates through the query results. + An enumerator that iterates through the query results. + + + Returns the results in a format useful for data binding. + + An of entity objects. + + + + Performs tasks associated with freeing, releasing, or resetting resources. + + + Releases the resources used by the object result. + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + Gets the next result set of a stored procedure. + An ObjectResult that enumerates the values of the next result set. Null, if there are no more, or if the ObjectResult is not the result of a stored procedure call. + The type of the element. + + + + IListSource.ContainsListCollection implementation. Always returns false. + + + + + When overridden in a derived class, gets the type of the generic + + . + + + The type of the generic . + + + + + This class represents the result of the method. + + The type of the result. + + + + This constructor is intended only for use when creating test doubles that will override members + with mocked or faked behavior. Use of this constructor for other purposes may result in unexpected + behavior including but not limited to throwing . + + + + Returns an enumerator that iterates through the query results. + An enumerator that iterates through the query results. + + + + + + Releases the unmanaged resources used by the and optionally releases the managed resources. + true to release managed and unmanaged resources; false to release only unmanaged resources. + + + + Gets the type of the . + + + A that is the type of the . + + + + + Represents a typed entity set that is used to perform create, read, update, and delete operations. + + The type of the entity. + + + Adds an object to the object context in the current entity set. + The object to add. + + + Attaches an object or object graph to the object context in the current entity set. + The object to attach. + + + Marks an object for deletion. + + An object that represents the entity to delete. The object can be in any state except + + . + + + + Removes the object from the object context. + + Object to be detached. Only the entity is removed; if there are any related objects that are being tracked by the same + + , those will not be detached automatically. + + + + + Copies the scalar values from the supplied object into the object in the + + that has the same key. + + The updated object. + + The detached object that has property updates to apply to the original object. The entity key of currentEntity must match the + + property of an entry in the + + . + + + + + Sets the property of an + + to match the property values of a supplied object. + + The updated object. + + The detached object that has property updates to apply to the original object. The entity key of originalEntity must match the + + property of an entry in the + + . + + + + Creates a new entity type object. + The new entity type object, or an instance of a proxy type that corresponds to the entity type. + + + Creates an instance of the specified type. + An instance of the requested type T , or an instance of a proxy type that corresponds to the type T . + Type of object to be returned. + + + + Gets the metadata of the entity set represented by this instance. + + + An object. + + + + + The original values of the properties of an entity when it was retrieved from the database. + + + + + Maintains object state and identity management for entity type instances and relationship instances. + + + + + Initializes a new instance of the class. + + + The , which supplies mapping and metadata information. + + + + + Returns a collection of objects for objects or relationships with the given state. + + + A collection of objects in the given + + . + + + An used to filter the returned + + objects. + + + When state is . + + + + + Changes state of the for a specific object to the specified entityState . + + + The for the supplied entity . + + The object for which the state must be changed. + The new state of the object. + When entity is null. + + When the object is not detached and does not have an entry in the state manager + or when you try to change the state to + from any other + or when state is not a valid value. + + + + Changes the state of the relationship between two entity objects that is specified based on the two related objects and the name of the navigation property. + + The for the relationship that was changed. + + + The object instance or of the source entity at one end of the relationship. + + + The object instance or of the target entity at the other end of the relationship. + + The name of the navigation property on source that returns the specified target . + + The requested of the specified relationship. + + When source or target is null. + + When trying to change the state of the relationship to a state other than + or + when either source or target is in a state + or when you try to change the state of the relationship to a state other than + or + when either source or target is in an state + or when state is not a valid value + + + + Changes the state of the relationship between two entity objects that is specified based on the two related objects and a LINQ expression that defines the navigation property. + + The for the relationship that was changed. + + + The object instance or of the source entity at one end of the relationship. + + + The object instance or of the target entity at the other end of the relationship. + + A LINQ expression that selects the navigation property on source that returns the specified target . + + The requested of the specified relationship. + + The entity type of the source object. + When source , target , or selector is null. + selector is malformed or cannot return a navigation property. + + When you try to change the state of the relationship to a state other than + or + when either source or target is in a + state + or when you try to change the state of the relationship to a state other than + or + when either source or target is in an state + or when state is not a valid value. + + + + Changes the state of the relationship between two entity objects that is specified based on the two related objects and the properties of the relationship. + + The for the relationship that was changed. + + + The object instance or of the source entity at one end of the relationship. + + + The object instance or of the target entity at the other end of the relationship. + + The name of the relationship. + The role name at the target end of the relationship. + + The requested of the specified relationship. + + When source or target is null. + + When you try to change the state of the relationship to a state other than + or + when either source or target is in a state + or when you try to change the state of the relationship to a state other than + or + when either source or target is in an + state + or when state is not a valid value. + + + + + Returns an for the object or relationship entry with the specified key. + + + The corresponding for the given + + . + + + The . + + When key is null. + When the specified key cannot be found in the state manager. + + No entity with the specified exists in the + + . + + + + + Returns an for the specified object. + + + The corresponding for the given + + . + + + The to which the retrieved + + belongs. + + + No entity for the specified exists in the + + . + + + + + Tries to retrieve the corresponding for the specified + + . + + + A Boolean value that is true if there is a corresponding + + for the given object; otherwise, false. + + + The to which the retrieved + + belongs. + + + When this method returns, contains the for the given + + This parameter is passed uninitialized. + + + + + Tries to retrieve the corresponding for the object or relationship with the specified + + . + + + A Boolean value that is true if there is a corresponding + + for the given + + ; otherwise, false. + + + The given . + + + When this method returns, contains an for the given + + This parameter is passed uninitialized. + + A null (Nothing in Visual Basic) value is provided for key . + + + + Returns the that is used by the specified object. + + + The for the specified object. + + + The object for which to return the . + + + The entity does not implement IEntityWithRelationships and is not tracked by this ObjectStateManager + + + + + Returns the that is used by the specified object. + + + true if a instance was returned for the supplied entity ; otherwise false. + + + The object for which to return the . + + + When this method returns, contains the + + for the entity . + + + + + Gets the associated with this state manager. + + + The associated with this + + . + + + + Occurs when entities are added to or removed from the state manager. + + + + A DataContractResolver that knows how to resolve proxy types created for persistent + ignorant classes to their base types. This is used with the DataContractSerializer. + + + + During deserialization, maps any xsi:type information to the actual type of the persistence-ignorant object. + Returns the type that the xsi:type is mapped to. Returns null if no known type was found that matches the xsi:type. + The xsi:type information to map. + The namespace of the xsi:type. + The declared type. + + An instance of . + + + + During serialization, maps actual types to xsi:type information. + true if the type was resolved; otherwise, false. + The actual type of the persistence-ignorant object. + The declared type. + + An instance of . + + When this method returns, contains a list of xsi:type declarations. + When this method returns, contains a list of namespaces used. + + + + Defines the different ways to handle modified properties when refreshing in-memory data from the database. + + + + + For unmodified client objects, same behavior as StoreWins. For modified client + objects, Refresh original values with store value, keeping all values on client + object. The next time an update happens, all the client change units will be + considered modified and require updating. + + + + + Discard all changes on the client and refresh values with store values. + Client original values is updated to match the store. + + + + + Flags used to modify behavior of ObjectContext.SaveChanges() + + + + + Changes are saved without the DetectChanges or the AcceptAllChangesAfterSave methods being called. + + + + + After changes are saved, the AcceptAllChangesAfterSave method is called, which resets change tracking in the ObjectStateManager. + + + + + Before changes are saved, the DetectChanges method is called to synchronize the property values of objects that are attached to the object context with data in the ObjectStateManager. + + + + + This exception is thrown when a update operation violates the concurrency constraint. + + + + + Exception during save changes to store + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a specialized error message. + + The message that describes the error. + + + + Initializes a new instance of the class that uses a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class that uses a specified error message, a reference to the inner exception, and an enumerable collection of + + objects. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + The collection of objects. + + + + + Initializes a new instance of with serialized data. + + + The that holds the serialized object data about the exception being thrown. + + + The that contains contextual information about the source or destination. + + + + + Gets the objects for this + + . + + + A collection of objects comprised of either a single entity and 0 or more relationships, or 0 entities and 1 or more relationships. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a specialized error message. + + The message that describes the error. + + + + Initializes a new instance of that uses a specified error message and a reference to the inner exception. + + The message that describes the error. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of that uses a specified error message, a reference to the inner exception, and an enumerable collection of + + objects. + + The message that describes the error. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + The enumerable collection of objects. + + + + + Property constraint exception class. Note that this class has state - so if you change even + its internals, it can be a breaking change + + + + + Initializes a new instance of the class with default message. + + + + + Initializes a new instance of the class with supplied message. + + A localized error message. + + + + Initializes a new instance of the class with supplied message and inner exception. + + A localized error message. + The inner exception. + + + + Initializes a new instance of the class. + + A localized error message. + The name of the property. + + + + Initializes a new instance of the class. + + A localized error message. + The name of the property. + The inner exception. + + + Gets the name of the property that violated the constraint. + The name of the property that violated the constraint. + + + + This exception is thrown when the store provider exhibits a behavior incompatible with the entity client provider + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a specialized error message. + + The message that describes the error. + + + + Initializes a new instance of that uses a specified error message. + + The message that describes the error. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Provides common language runtime (CLR) methods that expose EDM canonical functions + for use in or LINQ to Entities queries. + + + Note that this class was called EntityFunctions in some previous versions of Entity Framework. + + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDev EDM function to calculate + the standard deviation of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical StDevP EDM function to calculate + the standard deviation for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The standard deviation for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Var EDM function to calculate + the variance of the collection. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical VarP EDM function to calculate + the variance for the population. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The collection over which to perform the calculation. + The variance for the population. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Left EDM function to return a given + number of the leftmost characters in a string. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input string. + The number of characters to return + A string containing the number of characters asked for from the left of the input string. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Right EDM function to return a given + number of the rightmost characters in a string. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input string. + The number of characters to return + A string containing the number of characters asked for from the right of the input string. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Reverse EDM function to return a given + string with the order of the characters reversed. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input string. + The input string with the order of the characters reversed. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical GetTotalOffsetMinutes EDM function to + return the number of minutes that the given date/time is offset from UTC. This is generally between +780 + and -780 (+ or - 13 hrs). + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The date/time value to use. + The offset of the input from UTC. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical TruncateTime EDM function to return + the given date with the time portion cleared. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The date/time value to use. + The input date with the time portion cleared. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical TruncateTime EDM function to return + the given date with the time portion cleared. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The date/time value to use. + The input date with the time portion cleared. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical CreateDateTime EDM function to + create a new object. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The year. + The month (1-based). + The day (1-based). + The hours. + The minutes. + The seconds, including fractional parts of the seconds if desired. + The new date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical CreateDateTimeOffset EDM function to + create a new object. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The year. + The month (1-based). + The day (1-based). + The hours. + The minutes. + The seconds, including fractional parts of the seconds if desired. + The time zone offset part of the new date. + The new date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical CreateTime EDM function to + create a new object. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The hours. + The minutes. + The seconds, including fractional parts of the seconds if desired. + The new time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddYears EDM function to + add the given number of years to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of years to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddYears EDM function to + add the given number of years to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of years to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMonths EDM function to + add the given number of months to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of months to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMonths EDM function to + add the given number of months to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of months to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddDays EDM function to + add the given number of days to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of days to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddDays EDM function to + add the given number of days to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of days to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddHours EDM function to + add the given number of hours to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of hours to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddHours EDM function to + add the given number of hours to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of hours to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddHours EDM function to + add the given number of hours to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of hours to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMinutes EDM function to + add the given number of minutes to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of minutes to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMinutes EDM function to + add the given number of minutes to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of minutes to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMinutes EDM function to + add the given number of minutes to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of minutes to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddSeconds EDM function to + add the given number of seconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of seconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddSeconds EDM function to + add the given number of seconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of seconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddSeconds EDM function to + add the given number of seconds to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of seconds to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMilliseconds EDM function to + add the given number of milliseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of milliseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMilliseconds EDM function to + add the given number of milliseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of milliseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMilliseconds EDM function to + add the given number of milliseconds to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of milliseconds to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMicroseconds EDM function to + add the given number of microseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of microseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMicroseconds EDM function to + add the given number of microseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of microseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddMicroseconds EDM function to + add the given number of microseconds to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of microseconds to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddNanoseconds EDM function to + add the given number of nanoseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of nanoseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddNanoseconds EDM function to + add the given number of nanoseconds to a date/time. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of nanoseconds to add. + A resulting date/time. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical AddNanoseconds EDM function to + add the given number of nanoseconds to a time span. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The input date/time. + The number of nanoseconds to add. + A resulting time span. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffYears EDM function to + calculate the number of years between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of years between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffYears EDM function to + calculate the number of years between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of years between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMonths EDM function to + calculate the number of months between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of months between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMonths EDM function to + calculate the number of months between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of months between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffDays EDM function to + calculate the number of days between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of days between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffDays EDM function to + calculate the number of days between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of days between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffHours EDM function to + calculate the number of hours between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of hours between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffHours EDM function to + calculate the number of hours between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of hours between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffHours EDM function to + calculate the number of hours between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of hours between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMinutes EDM function to + calculate the number of minutes between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of minutes between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMinutes EDM function to + calculate the number of minutes between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of minutes between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMinutes EDM function to + calculate the number of minutes between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of minutes between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffSeconds EDM function to + calculate the number of seconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of seconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffSeconds EDM function to + calculate the number of seconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of seconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffSeconds EDM function to + calculate the number of seconds between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of seconds between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMilliseconds EDM function to + calculate the number of milliseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of milliseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMilliseconds EDM function to + calculate the number of milliseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of milliseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMilliseconds EDM function to + calculate the number of milliseconds between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of milliseconds between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMicroseconds EDM function to + calculate the number of microseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of microseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMicroseconds EDM function to + calculate the number of microseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of microseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffMicroseconds EDM function to + calculate the number of microseconds between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of microseconds between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffNanoseconds EDM function to + calculate the number of nanoseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of nanoseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffNanoseconds EDM function to + calculate the number of nanoseconds between two date/times. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first date/time. + The second date/time. + The number of nanoseconds between the first and second date/times. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical DiffNanoseconds EDM function to + calculate the number of nanoseconds between two time spans. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The first time span. + The second time span. + The number of nanoseconds between the first and second time spans. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Truncate EDM function to + truncate the given value to the number of specified digits. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The value to truncate. + The number of digits to preserve. + The truncated value. + + + + When used as part of a LINQ to Entities query, this method invokes the canonical Truncate EDM function to + truncate the given value to the number of specified digits. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function is translated to a corresponding function in the database. + + The value to truncate. + The number of digits to preserve. + The truncated value. + + + + When used as part of a LINQ to Entities query, this method acts as an operator that ensures the input + is treated as a Unicode string. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function impacts the way the LINQ query is translated to a query that can be run in the database. + + The input string. + The input string treated as a Unicode string. + + + + When used as part of a LINQ to Entities query, this method acts as an operator that ensures the input + is treated as a non-Unicode string. + + + You cannot call this function directly. This function can only appear within a LINQ to Entities query. + This function impacts the way the LINQ query is translated to a query that can be run in the database. + + The input string. + The input string treated as a non-Unicode string. + + + + Describes the state of an entity. + + + + + The entity is not being tracked by the context. + An entity is in this state immediately after it has been created with the new operator + or with one of the Create methods. + + + + + The entity is being tracked by the context and exists in the database, and its property + values have not changed from the values in the database. + + + + + The entity is being tracked by the context but does not yet exist in the database. + + + + + The entity is being tracked by the context and exists in the database, but has been marked + for deletion from the database the next time SaveChanges is called. + + + + + The entity is being tracked by the context and exists in the database, and some or all of its + property values have been modified. + + + + + Represents information about a database connection. + + + + + Creates a new instance of DbConnectionInfo representing a connection that is specified in the application configuration file. + + The name of the connection string in the application configuration. + + + + Creates a new instance of DbConnectionInfo based on a connection string. + + The connection string to use for the connection. + The name of the provider to use for the connection. Use 'System.Data.SqlClient' for SQL Server. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Instances of this class are used to create DbConnection objects for + SQL Server LocalDb based on a given database name or connection string. + + + An instance of this class can be set on the class or in the + app.config/web.config for the application to cause all DbContexts created with no + connection information or just a database name to use SQL Server LocalDb by default. + This class is immutable since multiple threads may access instances simultaneously + when creating connections. + + + + + Implementations of this interface are used to create DbConnection objects for + a type of database server based on a given database name. + An Instance is set on the class to + cause all DbContexts created with no connection information or just a database + name or connection string to use a certain type of database server by default. + Two implementations of this interface are provided: + is used to create connections to Microsoft SQL Server, including EXPRESS editions. + is used to create connections to Microsoft SQL + Server Compact Editions. + Other implementations for other database servers can be added as needed. + Note that implementations should be thread safe or immutable since they may + be accessed by multiple threads at the same time. + + + + + Creates a connection based on the given database name or connection string. + + The database name or connection string. + An initialized DbConnection. + + + + Creates a new instance of the connection factory for the given version of LocalDb. + For SQL Server 2012 LocalDb use "v11.0". + For SQL Server 2014 and later LocalDb use "mssqllocaldb". + + The LocalDb version to use. + + + + Creates a new instance of the connection factory for the given version of LocalDb. + For SQL Server 2012 LocalDb use "v11.0". + For SQL Server 2014 and later LocalDb use "mssqllocaldb". + + The LocalDb version to use. + The connection string to use for options to the database other than the 'Initial Catalog', 'Data Source', and 'AttachDbFilename'. The 'Initial Catalog' and 'AttachDbFilename' will be prepended to this string based on the database name when CreateConnection is called. The 'Data Source' will be set based on the LocalDbVersion argument. + + + + Creates a connection for SQL Server LocalDb based on the given database name or connection string. + If the given string contains an '=' character then it is treated as a full connection string, + otherwise it is treated as a database name only. + + The database name or connection string. + An initialized DbConnection. + + + + The connection string to use for options to the database other than the 'Initial Catalog', + 'Data Source', and 'AttachDbFilename'. + The 'Initial Catalog' and 'AttachDbFilename' will be prepended to this string based on the + database name when CreateConnection is called. + The 'Data Source' will be set based on the LocalDbVersion argument. + The default is 'Integrated Security=True;'. + + + + + An implementation of that will use Code First Migrations + to update the database to the latest version. + + The type of the context. + The type of the migrations configuration to use during initialization. + + + + Initializes a new instance of the MigrateDatabaseToLatestVersion class that will use + the connection information from a context constructed using the default constructor + or registered factory if applicable + + + + + Initializes a new instance of the MigrateDatabaseToLatestVersion class specifying whether to + use the connection information from the context that triggered initialization to perform the migration. + + + If set to true the initializer is run using the connection information from the context that + triggered initialization. Otherwise, the connection information will be taken from a context constructed + using the default constructor or registered factory if applicable. + + + + + Initializes a new instance of the MigrateDatabaseToLatestVersion class specifying whether to + use the connection information from the context that triggered initialization to perform the migration. + Also allows specifying migrations configuration to use during initialization. + + + If set to true the initializer is run using the connection information from the context that + triggered initialization. Otherwise, the connection information will be taken from a context constructed + using the default constructor or registered factory if applicable. + + Migrations configuration to use during initialization. + + + + Initializes a new instance of the MigrateDatabaseToLatestVersion class that will + use a specific connection string from the configuration file to connect to + the database to perform the migration. + + The name of the connection string to use for migration. + + + + + + + Helper class that is used to configure a column. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Creates a new column definition to store Binary data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + The maximum allowable length of the array data. + Value indicating whether or not all data should be padded to the maximum length. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + Value indicating whether or not this column should be configured as a timestamp. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store Boolean data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store Byte data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + Value indicating whether or not the database will generate values for this column during insert. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store DateTime data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + The precision of the column. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store Decimal data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + The numeric precision of the column. + The numeric scale of the column. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Value indicating whether or not the database will generate values for this column during insert. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store Double data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store GUID data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + Value indicating whether or not the database will generate values for this column during insert. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store Single data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store Short data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + Value indicating whether or not the database will generate values for this column during insert. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store Integer data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + Value indicating whether or not the database will generate values for this column during insert. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store Long data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + Value indicating whether or not the database will generate values for this column during insert. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store String data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + The maximum allowable length of the string data. + Value indicating whether or not all data should be padded to the maximum length. + Value indicating whether or not the column supports Unicode content. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store Time data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + The precision of the column. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store DateTimeOffset data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + The precision of the column. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store geography data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + Creates a new column definition to store geometry data. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Value indicating whether or not the column allows null values. + Constant value to use as the default value for this column. + SQL expression used as the default value for this column. + The name of the column. + Provider specific data type to use for this column. + Custom annotations usually from the Code First model. + The newly constructed column definition. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Creates a shallow copy of the current . + + A shallow copy of the current . + + + + Helper class that is used to further configure a table being created from a CreateTable call on + + . + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The type that represents the table's columns. + + + + Initializes a new instance of the TableBuilder class. + + The table creation operation to be further configured. + The migration the table is created in. + + + + Specifies a primary key for the table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + A lambda expression representing the property to be used as the primary key. C#: t => t.Id VB.Net: Function(t) t.Id If the primary key is made up of multiple properties then specify an anonymous type including the properties. C#: t => new { t.Id1, t.Id2 } VB.Net: Function(t) New With { t.Id1, t.Id2 } + The name of the primary key. If null is supplied, a default name will be generated. + A value indicating whether or not this is a clustered primary key. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + Itself, so that multiple calls can be chained. + + + + Specifies an index to be created on the table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + A lambda expression representing the property to be indexed. C#: t => t.PropertyOne VB.Net: Function(t) t.PropertyOne If multiple properties are to be indexed then specify an anonymous type including the properties. C#: t => new { t.PropertyOne, t.PropertyTwo } VB.Net: Function(t) New With { t.PropertyOne, t.PropertyTwo } + The name of the index. + A value indicating whether or not this is a unique index. + A value indicating whether or not this is a clustered index. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + Itself, so that multiple calls can be chained. + + + + Specifies a foreign key constraint to be created on the table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Name of the table that the foreign key constraint targets. + A lambda expression representing the properties of the foreign key. C#: t => t.PropertyOne VB.Net: Function(t) t.PropertyOne If multiple properties make up the foreign key then specify an anonymous type including the properties. C#: t => new { t.PropertyOne, t.PropertyTwo } VB.Net: Function(t) New With { t.PropertyOne, t.PropertyTwo } + A value indicating whether or not cascade delete should be configured on the foreign key constraint. + The name of this foreign key constraint. If no name is supplied, a default name will be calculated. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + Itself, so that multiple calls can be chained. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Creates a shallow copy of the current . + + A shallow copy of the current . + + + + Base class for code-based migrations. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Operations to be performed during the upgrade process. + + + + + Operations to be performed during the downgrade process. + + + + + Adds an operation to create a new stored procedure. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the stored procedure. Schema name is optional, if no schema is specified then dbo is + assumed. + + The body of the stored procedure. + + The additional arguments that may be processed by providers. Use anonymous type syntax + to specify arguments. For example, 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to create a new stored procedure. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the stored procedure. Schema name is optional, if no schema is specified then dbo is + assumed. + + The action that specifies the parameters of the stored procedure. + The body of the stored procedure. + + The additional arguments that may be processed by providers. Use anonymous type syntax + to specify arguments. For example, 'new { SampleArgument = "MyValue" }'. + + + The parameters in this create stored procedure operation. You do not need to specify this + type, it will be inferred from the parameter you supply. + + + + + Adds an operation to alter a stored procedure. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the stored procedure. Schema name is optional, if no schema is specified then dbo is + assumed. + + The body of the stored procedure. + + The additional arguments that may be processed by providers. Use anonymous type syntax + to specify arguments. For example, 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to alter a stored procedure. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The parameters in this alter stored procedure operation. You do not need to specify this + type, it will be inferred from the parameter you supply. + + + The name of the stored procedure. Schema name is optional, if no schema is specified then dbo is + assumed. + + The action that specifies the parameters of the stored procedure. + The body of the stored procedure. + + The additional arguments that may be processed by providers. Use anonymous type syntax + to specify arguments. For example, 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop an existing stored procedure with the specified name. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the procedure to drop. Schema name is optional, if no schema is specified then dbo is + assumed. + + + The additional arguments that may be processed by providers. Use anonymous type syntax + to specify arguments. For example, 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to create a new table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The columns in this create table operation. You do not need to specify this type, it will + be inferred from the columnsAction parameter you supply. + + The name of the table. Schema name is optional, if no schema is specified then dbo is assumed. + + An action that specifies the columns to be included in the table. i.e. t => new { Id = + t.Int(identity: true), Name = t.String() } + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + An object that allows further configuration of the table creation operation. + + + + Adds an operation to create a new table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The columns in this create table operation. You do not need to specify this type, it will + be inferred from the columnsAction parameter you supply. + + The name of the table. Schema name is optional, if no schema is specified then dbo is assumed. + + An action that specifies the columns to be included in the table. i.e. t => new { Id = + t.Int(identity: true), Name = t.String() } + + Custom annotations that exist on the table to be created. May be null or empty. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + An object that allows further configuration of the table creation operation. + + + + Adds an operation to handle changes in the annotations defined on tables. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The columns in this operation. You do not need to specify this type, it will + be inferred from the columnsAction parameter you supply. + + The name of the table. Schema name is optional, if no schema is specified then dbo is assumed. + + An action that specifies the columns to be included in the table. i.e. t => new { Id = + t.Int(identity: true), Name = t.String() } + + The custom annotations on the table that have changed. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to create a new foreign key constraint. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The table that contains the foreign key column. Schema name is optional, if no schema is + specified then dbo is assumed. + + The foreign key column. + + The table that contains the column this foreign key references. Schema name is optional, + if no schema is specified then dbo is assumed. + + + The column this foreign key references. If no value is supplied the primary key of the + principal table will be referenced. + + + A value indicating if cascade delete should be configured for the foreign key + relationship. If no value is supplied, cascade delete will be off. + + + The name of the foreign key constraint in the database. If no value is supplied a unique name will + be generated. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to create a new foreign key constraint. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The table that contains the foreign key columns. Schema name is optional, if no schema is + specified then dbo is assumed. + + The foreign key columns. + + The table that contains the columns this foreign key references. Schema name is optional, + if no schema is specified then dbo is assumed. + + + The columns this foreign key references. If no value is supplied the primary key of the + principal table will be referenced. + + + A value indicating if cascade delete should be configured for the foreign key + relationship. If no value is supplied, cascade delete will be off. + + + The name of the foreign key constraint in the database. If no value is supplied a unique name will + be generated. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop a foreign key constraint based on its name. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The table that contains the foreign key column. Schema name is optional, if no schema is + specified then dbo is assumed. + + The name of the foreign key constraint in the database. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop a foreign key constraint based on the column it targets. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The table that contains the foreign key column. Schema name is optional, if no schema is + specified then dbo is assumed. + + The foreign key column. + + The table that contains the column this foreign key references. Schema name is optional, + if no schema is specified then dbo is assumed. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop a foreign key constraint based on the column it targets. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The table that contains the foreign key column. + Schema name is optional, if no schema is specified then dbo is assumed. + + The foreign key column. + + The table that contains the column this foreign key references. + Schema name is optional, if no schema is specified then dbo is assumed. + + The columns this foreign key references. + + Additional arguments that may be processed by providers. + Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop a foreign key constraint based on the columns it targets. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The table that contains the foreign key columns. Schema name is optional, if no schema is + specified then dbo is assumed. + + The foreign key columns. + + The table that contains the columns this foreign key references. Schema name is optional, + if no schema is specified then dbo is assumed. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to be dropped. Schema name is optional, if no schema is specified then dbo is + assumed. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to be dropped. Schema name is optional, if no schema is specified then dbo is + assumed. + + Custom annotations that exist on columns of the table that is being dropped. May be null or empty. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to be dropped. Schema name is optional, if no schema is specified then dbo is + assumed. + + Custom annotations that exist on the table that is being dropped. May be null or empty. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to be dropped. Schema name is optional, if no schema is specified then dbo is + assumed. + + Custom annotations that exist on the table that is being dropped. May be null or empty. + Custom annotations that exist on columns of the table that is being dropped. May be null or empty. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to move a table to a new schema. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to be moved. Schema name is optional, if no schema is specified then dbo is + assumed. + + The schema the table is to be moved to. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to move a stored procedure to a new schema. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the stored procedure to be moved. Schema name is optional, if no schema is specified + then dbo is assumed. + + The schema the stored procedure is to be moved to. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to rename a table. To change the schema of a table use MoveTable. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to be renamed. Schema name is optional, if no schema is specified then dbo is + assumed. + + + The new name for the table. Schema name is optional, if no schema is specified then dbo is + assumed. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to rename a stored procedure. To change the schema of a stored procedure use MoveStoredProcedure + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the stored procedure to be renamed. Schema name is optional, if no schema is specified + then dbo is assumed. + + + The new name for the stored procedure. Schema name is optional, if no schema is specified then + dbo is assumed. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to rename a column. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table that contains the column to be renamed. Schema name is optional, if no + schema is specified then dbo is assumed. + + The name of the column to be renamed. + The new name for the column. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to add a column to an existing table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to add the column to. Schema name is optional, if no schema is specified + then dbo is assumed. + + The name of the column to be added. + + An action that specifies the column to be added. i.e. c => c.Int(nullable: false, + defaultValue: 3) + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop an existing column. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to drop the column from. Schema name is optional, if no schema is specified + then dbo is assumed. + + The name of the column to be dropped. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop an existing column. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to drop the column from. Schema name is optional, if no schema is specified + then dbo is assumed. + + The name of the column to be dropped. + Custom annotations that exist on the column that is being dropped. May be null or empty. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to alter the definition of an existing column. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table the column exists in. Schema name is optional, if no schema is specified + then dbo is assumed. + + The name of the column to be changed. + + An action that specifies the new definition for the column. i.e. c => c.String(nullable: + false, defaultValue: "none") + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to create a new primary key. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The table that contains the primary key column. Schema name is optional, if no schema is specified + then dbo is assumed. + + The primary key column. + + The name of the primary key in the database. If no value is supplied a unique name will be + generated. + + A value indicating whether or not this is a clustered primary key. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to create a new primary key based on multiple columns. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The table that contains the primary key columns. Schema name is optional, if no schema is + specified then dbo is assumed. + + The primary key columns. + + The name of the primary key in the database. If no value is supplied a unique name will be + generated. + + A value indicating whether or not this is a clustered primary key. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop an existing primary key that does not have the default name. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The table that contains the primary key column. Schema name is optional, if no schema is specified + then dbo is assumed. + + The name of the primary key to be dropped. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop an existing primary key that was created with the default name. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The table that contains the primary key column. Schema name is optional, if no schema is specified + then dbo is assumed. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to create an index on a single column. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to create the index on. Schema name is optional, if no schema is specified + then dbo is assumed. + + The name of the column to create the index on. + + A value indicating if this is a unique index. If no value is supplied a non-unique index will be + created. + + + The name to use for the index in the database. If no value is supplied a unique name will be + generated. + + A value indicating whether or not this is a clustered index. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to create an index on multiple columns. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to create the index on. Schema name is optional, if no schema is specified + then dbo is assumed. + + The name of the columns to create the index on. + + A value indicating if this is a unique index. If no value is supplied a non-unique index will be + created. + + + The name to use for the index in the database. If no value is supplied a unique name will be + generated. + + A value indicating whether or not this is a clustered index. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop an index based on its name. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to drop the index from. Schema name is optional, if no schema is specified + then dbo is assumed. + + The name of the index to be dropped. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to drop an index based on the columns it targets. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table to drop the index from. Schema name is optional, if no schema is specified + then dbo is assumed. + + The name of the column(s) the index targets. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to rename an index. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The name of the table that contains the index to be renamed. Schema name is optional, if no + schema is specified then dbo is assumed. + + The name of the index to be renamed. + The new name for the index. + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to execute a SQL command or set of SQL commands. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The SQL to be executed. + + A value indicating if the SQL should be executed outside of the transaction being + used for the migration process. If no value is supplied the SQL will be executed within the transaction. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to execute a SQL file. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The SQL file to be executed. Relative paths are assumed to be relative to the current AppDomain's BaseDirectory. + + + A value indicating if the SQL should be executed outside of the transaction being + used for the migration process. If no value is supplied the SQL will be executed within the transaction. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Adds an operation to execute a SQL resource file. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The manifest resource name of the SQL resource file to be executed. + + The assembly containing the resource file. The calling assembly is assumed if not provided. + + + A value indicating if the SQL should be executed outside of the transaction being + used for the migration process. If no value is supplied the SQL will be executed within the transaction. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + + + + + + + + + + + + + + + + + + + Configuration relating to the use of migrations for a given model. + You will typically create a configuration class that derives + from rather than + using this class. + + + + + The default directory that migrations are stored in. + + + + + Initializes a new instance of the DbMigrationsConfiguration class. + + + + + Adds a new SQL generator to be used for a given database provider. + + Name of the database provider to set the SQL generator for. + The SQL generator to be used. + + + + Gets the SQL generator that is set to be used with a given database provider. + + Name of the database provider to get the SQL generator for. + The SQL generator that is set for the database provider. + + + + Adds a new factory for creating instances to be used for a given database provider. + + Name of the database provider to set the SQL generator for. + + A factory for creating instances for a given and + representing the default schema. + + + + + Gets the history context factory that is set to be used with a given database provider. + + Name of the database provider to get thefactory for. + The history context factory that is set for the database provider. + + + + Gets or sets a value indicating if automatic migrations can be used when migrating the database. + + + + + Gets or sets the string used to distinguish migrations belonging to this configuration + from migrations belonging to other configurations using the same database. + This property enables migrations from multiple different models to be applied to applied to a single database. + + + + + Gets or sets a value indicating if data loss is acceptable during automatic migration. + If set to false an exception will be thrown if data loss may occur as part of an automatic migration. + + + + + Gets or sets the derived DbContext representing the model to be migrated. + + + + + Gets or sets the namespace used for code-based migrations. + + + + + Gets or sets the sub-directory that code-based migrations are stored in. + Note that this property must be set to a relative path for a sub-directory under the + Visual Studio project root; it cannot be set to an absolute path. + + + + + Gets or sets the code generator to be used when scaffolding migrations. + + + + + Gets or sets the assembly containing code-based migrations. + + + + + Gets or sets a value to override the connection of the database to be migrated. + + + + + Gets or sets the timeout value used for the individual commands within a + migration. A null value indicates that the default value of the underlying + provider will be used. + + + + + Configuration relating to the use of migrations for a given model. + + The context representing the model that this configuration applies to. + + + + Initializes a new instance of the DbMigrationsConfiguration class. + + + + + Runs after upgrading to the latest migration to allow seed data to be updated. + + + Note that the database may already contain seed data when this method runs. This means that + implementations of this method must check whether or not seed data is present and/or up-to-date + and then only make changes if necessary and in a non-destructive way. The + + can be used to help with this, but for seeding large amounts of data it may be necessary to do less + granular checks if performance is an issue. + If the database + initializer is being used, then this method will be called each time that the initializer runs. + If one of the , , + or initializers is being used, then this method will not be + called and the Seed method defined in the initializer should be used instead. + + Context to be used for updating seed data. + + + + + + + + + + + + + + + + + + + DbMigrator is used to apply existing migrations to a database. + DbMigrator can be used to upgrade and downgrade to any given migration. + To scaffold migrations based on changes to your model use + + + + + Base class for decorators that wrap the core + + + + + Initializes a new instance of the MigratorBase class. + + The migrator that this decorator is wrapping. + + + + Gets a list of the pending migrations that have not been applied to the database. + + List of migration Ids + + + + Updates the target database to the latest migration. + + + + + Updates the target database to a given migration. + + The migration to upgrade/downgrade to. + + + + Gets a list of the migrations that are defined in the assembly. + + List of migration Ids + + + + Gets a list of the migrations that have been applied to the database. + + List of migration Ids + + + + Gets the configuration being used for the migrations process. + + + + + Migration Id representing the state of the database before any migrations are applied. + + + + + Initializes a new instance of the DbMigrator class. + + Configuration to be used for the migration process. + + + + Gets all migrations that are defined in the configured migrations assembly. + + The list of migrations. + + + + Gets all migrations that have been applied to the target database. + + The list of migrations. + + + + Gets all migrations that are defined in the assembly but haven't been applied to the target database. + + The list of migrations. + + + + Updates the target database to a given migration. + + The migration to upgrade/downgrade to. + + + + Gets the configuration that is being used for the migration process. + + + + + A set of extension methods for + + + + + Adds or updates entities by key when SaveChanges is called. Equivalent to an "upsert" operation + from database terminology. + This method can useful when seeding data using Migrations. + + The type of entities to add or update. + The set to which the entities belong. + The entities to add or update. + + When the parameter is a custom or fake IDbSet implementation, this method will + attempt to locate and invoke a public, instance method with the same signature as this extension method. + + + + + Adds or updates entities by a custom identification expression when SaveChanges is called. + Equivalent to an "upsert" operation from database terminology. + This method can useful when seeding data using Migrations. + + The type of entities to add or update. + The set to which the entities belong. + An expression specifying the properties that should be used when determining whether an Add or Update operation should be performed. + The entities to add or update. + + When the parameter is a custom or fake IDbSet implementation, this method will + attempt to locate and invoke a public, instance method with the same signature as this extension method. + + + + + Generates C# code for a code-based migration. + + + + + Base class for providers that generate code for code-based migrations. + + + + + Generates the code that should be added to the users project. + + Unique identifier of the migration. + Operations to be performed by the migration. + Source model to be stored in the migration metadata. + Target model to be stored in the migration metadata. + Namespace that code should be generated in. + Name of the class that should be generated. + The generated code. + + + + Gets the namespaces that must be output as "using" or "Imports" directives to handle + the code generated by the given operations. + + The operations for which code is going to be generated. + An ordered list of namespace names. + + + + Gets the default namespaces that must be output as "using" or "Imports" directives for + any code generated. + + A value indicating if this class is being generated for a code-behind file. + An ordered list of namespace names. + + + + Gets the instances that are being used. + + + + + + + + Generates the primary code file that the user can view and edit. + + Operations to be performed by the migration. + Namespace that code should be generated in. + Name of the class that should be generated. + The generated code. + + + + Generates the code behind file with migration metadata. + + Unique identifier of the migration. + Source model to be stored in the migration metadata. + Target model to be stored in the migration metadata. + Namespace that code should be generated in. + Name of the class that should be generated. + The generated code. + + + + Generates a property to return the source or target model in the code behind file. + + Name of the property. + Value to be returned. + Text writer to add the generated code to. + + + + Generates class attributes. + + Text writer to add the generated code to. + A value indicating if this class is being generated for a code-behind file. + + + + Generates a namespace, using statements and class definition. + + Namespace that code should be generated in. + Name of the class that should be generated. + Text writer to add the generated code to. + Base class for the generated class. + A value indicating if this class is being generated for a code-behind file. + Namespaces for which using directives will be added. If null, then the namespaces returned from GetDefaultNamespaces will be used. + + + + Generates the closing code for a class that was started with WriteClassStart. + + Namespace that code should be generated in. + Text writer to add the generated code to. + + + + Generates code to perform an . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform an . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code for to re-create the given dictionary of annotations for use when passing + these annotations as a parameter of a . call. + + The annotations to generate. + The writer to which generated code should be written. + + + + Generates code for to re-create the given dictionary of annotations for use when passing + these annotations as a parameter of a . call. + + The annotations to generate. + The writer to which generated code should be written. + + + + Generates code for the given annotation value, which may be null. The default behavior is to use an + if one is registered, otherwise call ToString on the annotation value. + + + Note that a can be registered to generate code for custom annotations + without the need to override the entire code generator. + + The name of the annotation for which code is needed. + The annotation value to generate. + The writer to which generated code should be written. + + + Generates code to perform a . + The operation to generate code for. + Text writer to add the generated code to. + + + Generates code to perform a . + The operation to generate code for. + Text writer to add the generated code to. + + + Generates code to specify the definition for a . + The parameter definition to generate code for. + Text writer to add the generated code to. + A value indicating whether to include the column name in the definition. + + + Generates code to perform a . + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code for an . + + The operation for which code should be generated. + The writer to which generated code should be written. + + + + Generates code to perform an as part of a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform an as part of a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a as part of a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to specify a set of column names using a lambda expression. + + The columns to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform an . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform an . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to specify the definition for a . + + The column definition to generate code for. + Text writer to add the generated code to. + A value indicating whether to include the column name in the definition. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column of unknown data type. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Removes any invalid characters from the name of an database artifact. + + The name to be scrubbed. + The scrubbed name. + + + + Gets the type name to use for a column of the given data type. + + The data type to translate. + The type name to use in the generated migration. + + + + Quotes an identifier using appropriate escaping to allow it to be stored in a string. + + The identifier to be quoted. + The quoted identifier. + + + + Scaffolds code-based migrations to apply pending model changes to the database. + + + + + Initializes a new instance of the MigrationScaffolder class. + + Configuration to be used for scaffolding. + + + + Scaffolds a code based migration to apply any pending model changes to the database. + + The name to use for the scaffolded migration. + The scaffolded migration. + + + + Scaffolds a code based migration to apply any pending model changes to the database. + + The name to use for the scaffolded migration. + Whether or not to include model changes. + The scaffolded migration. + + + + Scaffolds the initial code-based migration corresponding to a previously run database initializer. + + The scaffolded migration. + + + + Gets or sets the namespace used in the migration's generated code. + By default, this is the same as MigrationsNamespace on the migrations + configuration object passed into the constructor. For VB.NET projects, this + will need to be updated to take into account the project's root namespace. + + + + + Represents a code-based migration that has been scaffolded and is ready to be written to a file. + + + + + Gets or sets the unique identifier for this migration. + Typically used for the file name of the generated code. + + + + + Gets or sets the scaffolded migration code that the user can edit. + + + + + Gets or sets the scaffolded migration code that should be stored in a code behind file. + + + + + Gets or sets the programming language used for this migration. + Typically used for the file extension of the generated code. + + + + + Gets or sets the subdirectory in the user's project that this migration should be saved in. + + + + + Gets a dictionary of string resources to add to the migration resource file. + + + + + Gets or sets whether the migration was re-scaffolded. + + + + + Helper class that is used by design time tools to run migrations related + commands that need to interact with an application that is being edited + in Visual Studio. + Because the application is being edited the assemblies need to + be loaded in a separate AppDomain to ensure the latest version + is always loaded. + The App/Web.config file from the startup project is also copied + to ensure that any configuration is applied. + + + + + Initializes a new instance of the ToolingFacade class. + + The name of the assembly that contains the migrations configuration to be used. + The name of the assembly that contains the DbContext to be used. + The namespace qualified name of migrations configuration to be used. + The working directory containing the compiled assemblies. + The path of the config file from the startup project. + The path of the application data directory from the startup project. Typically the App_Data directory for web applications or the working directory for executables. + The connection to the database to be migrated. If null is supplied, the default connection for the context will be used. + + + + Releases all unmanaged resources used by the facade. + + + + + Gets the fully qualified name of all types deriving from . + + All context types found. + + + + Gets the fully qualified name of a type deriving from . + + The name of the context type. If null, the single context type found in the assembly will be returned. + The context type found. + + + + Gets a list of all migrations that have been applied to the database. + + Ids of applied migrations. + + + + Gets a list of all migrations that have not been applied to the database. + + Ids of pending migrations. + + + + Updates the database to the specified migration. + + The Id of the migration to migrate to. If null is supplied, the database will be updated to the latest migration. + Value indicating if data loss during automatic migration is acceptable. + + + + Generates a SQL script to migrate between two migrations. + + The migration to update from. If null is supplied, a script to update the current database will be produced. + The migration to update to. If null is supplied, a script to update to the latest migration will be produced. + Value indicating if data loss during automatic migration is acceptable. + The generated SQL script. + + + + Scaffolds a code-based migration to apply any pending model changes. + + The name for the generated migration. + The programming language of the generated migration. + The root namespace of the project the migration will be added to. + Whether or not to include model changes. + The scaffolded migration. + + + + Scaffolds the initial code-based migration corresponding to a previously run database initializer. + + The programming language of the generated migration. + The root namespace of the project the migration will be added to. + The scaffolded migration. + + + + + + + Releases all resources used by the facade. + + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + + Gets or sets an action to be run to log information. + + + + + Gets or sets an action to be run to log warnings. + + + + + Gets or sets an action to be run to log verbose information. + + + + + Base class for loggers that can be used for the migrations process. + + + + + Logs an informational message. + + The message to be logged. + + + + Logs a warning that the user should be made aware of. + + The message to be logged. + + + + Logs some additional information that should only be presented to the user if they request verbose output. + + The message to be logged. + + + + Generates VB.Net code for a code-based migration. + + + + + + + + Generates the primary code file that the user can view and edit. + + Operations to be performed by the migration. + Namespace that code should be generated in. + Name of the class that should be generated. + The generated code. + + + + Generates the code behind file with migration metadata. + + Unique identifier of the migration. + Source model to be stored in the migration metadata. + Target model to be stored in the migration metadata. + Namespace that code should be generated in. + Name of the class that should be generated. + The generated code. + + + + Generates a property to return the source or target model in the code behind file. + + Name of the property. + Value to be returned. + Text writer to add the generated code to. + + + + Generates class attributes. + + Text writer to add the generated code to. + A value indicating if this class is being generated for a code-behind file. + + + + Generates a namespace, using statements and class definition. + + Namespace that code should be generated in. + Name of the class that should be generated. + Text writer to add the generated code to. + Base class for the generated class. + A value indicating if this class is being generated for a code-behind file. + Namespaces for which Imports directives will be added. If null, then the namespaces returned from GetDefaultNamespaces will be used. + + + + Generates the closing code for a class that was started with WriteClassStart. + + Namespace that code should be generated in. + Text writer to add the generated code to. + + + + Generates code to perform an . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform an . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code for to re-create the given dictionary of annotations for use when passing + these annotations as a parameter of a . call. + + The annotations to generate. + The writer to which generated code should be written. + + + + Generates code for to re-create the given dictionary of annotations for use when passing + these annotations as a parameter of a . call. + + The annotations to generate. + The writer to which generated code should be written. + + + + Generates code for the given annotation value, which may be null. The default behavior is to use an + if one is registered, otherwise call ToString on the annotation value. + + + Note that a can be registered to generate code for custom annotations + without the need to override the entire code generator. + + The name of the annotation for which code is needed. + The annotation value to generate. + The writer to which generated code should be written. + + + Generates code to perform a . + The operation to generate code for. + Text writer to add the generated code to. + + + Generates code to perform a . + The operation to generate code for. + Text writer to add the generated code to. + + + Generates code to perform a . + The parameter model definition to generate code for. + Text writer to add the generated code to. + true to include the column name in the definition; otherwise, false. + + + Generates code to perform a . + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code for an . + + The operation for which code should be generated. + The writer to which generated code should be written. + + + + Generates code to perform an as part of a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform an as part of a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a as part of a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to specify a set of column names using a lambda expression. + + The columns to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform an . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform an . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to specify the definition for a . + + The column definition to generate code for. + Text writer to add the generated code to. + A value indicating whether to include the column name in the definition. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to specify the default value for a column of unknown data type. + + The value to be used as the default. + Code representing the default value. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Generates code to perform a . + + The operation to generate code for. + Text writer to add the generated code to. + + + + Removes any invalid characters from the name of an database artifact. + + The name to be scrubbed. + The scrubbed name. + + + + Gets the type name to use for a column of the given data type. + + The data type to translate. + The type name to use in the generated migration. + + + + Quotes an identifier using appropriate escaping to allow it to be stored in a string. + + The identifier to be quoted. + The quoted identifier. + + + + Contains extension methods for the class. + + + + + Configures an awaiter used to await this to avoid + marshalling the continuation + back to the original context, but preserve the current culture and UI culture. + + + The type of the result produced by the associated . + + The task to be awaited on. + An object used to await this task. + + + + Configures an awaiter used to await this to avoid + marshalling the continuation + back to the original context, but preserve the current culture and UI culture. + + The task to be awaited on. + An object used to await this task. + + + + Provides an awaitable object that allows for awaits on that + preserve the culture. + + + The type of the result produced by the associated . + + This type is intended for compiler use only. + + + + Constructs a new instance of the class. + + The task to be awaited on. + + + Gets an awaiter used to await this . + An awaiter instance. + This method is intended for compiler user rather than use directly in code. + + + Ends the await on the completed . + The result of the completed . + The awaiter was not properly initialized. + The task was canceled. + The task completed in a Faulted state. + + + This method is not implemented and should not be called. + The action to invoke when the await operation completes. + + + + Schedules the continuation onto the associated with this + . + + The action to invoke when the await operation completes. + + The argument is null + (Nothing in Visual Basic). + + The awaiter was not properly initialized. + This method is intended for compiler user rather than use directly in code. + + + + Gets whether this Task has completed. + + + will return true when the Task is in one of the three + final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Provides an awaitable object that allows for awaits on that + preserve the culture. + + This type is intended for compiler use only. + + + + Constructs a new instance of the class. + + The task to be awaited on. + + + Gets an awaiter used to await this . + An awaiter instance. + This method is intended for compiler user rather than use directly in code. + + + Ends the await on the completed . + The awaiter was not properly initialized. + The task was canceled. + The task completed in a Faulted state. + + + This method is not implemented and should not be called. + The action to invoke when the await operation completes. + + + + Schedules the continuation onto the associated with this + . + + The action to invoke when the await operation completes. + + The argument is null + (Nothing in Visual Basic). + + The awaiter was not properly initialized. + This method is intended for compiler user rather than use directly in code. + + + + Gets whether this Task has completed. + + + will return true when the Task is in one of the three + final states: RanToCompletion, + Faulted, or + Canceled. + + + + + This class is used by Code First Migrations to read and write migration history + from the database. + To customize the definition of the migrations history table you can derive from + this class and override OnModelCreating. Derived instances can either be registered + on a per migrations configuration basis using , + or globally using . + + + + + The default name used for the migrations history table. + + + + + Initializes a new instance of the HistoryContext class. + If you are creating a derived history context you will generally expose a constructor + that accepts these same parameters and passes them to this base constructor. + + + An existing connection to use for the new context. + + + The default schema of the model being migrated. + This schema will be used for the migrations history table unless a different schema is configured in OnModelCreating. + + + + + Applies the default configuration for the migrations history table. If you override + this method it is recommended that you call this base implementation before applying your + custom configuration. + + The builder that defines the model for the context being created. + + + + Gets the key used to locate a model that was previously built for this context. This is used + to avoid processing OnModelCreating and calculating the model every time a new context instance is created. + By default this property returns the default schema. + In most cases you will not need to override this property. However, if your implementation of OnModelCreating + contains conditional logic that results in a different model being built for the same database provider and + default schema you should override this property and calculate an appropriate key. + + + + + Gets the default schema of the model being migrated. + This schema will be used for the migrations history table unless a different schema is configured in OnModelCreating. + + + + + Gets or sets a that can be used to read and write instances. + + + + + This class is used by Code First Migrations to read and write migration history + from the database. + + + + + Gets or sets the Id of the migration this row represents. + + + + + Gets or sets a key representing to which context the row applies. + + + + + Gets or sets the state of the model after this migration was applied. + + + + + Gets or sets the version of Entity Framework that created this entry. + + + + + Represents an error that occurs when an automatic migration would result in data loss. + + + + + Initializes a new instance of the AutomaticDataLossException class. + + + + + Initializes a new instance of the AutomaticDataLossException class. + + The message that describes the error. + + + + Initializes a new instance of the MigrationsException class. + + The message that describes the error. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Represents an error that occurs when there are pending model changes after applying the last migration and automatic migration is disabled. + + + + + Initializes a new instance of the AutomaticMigrationsDisabledException class. + + + + + Initializes a new instance of the AutomaticMigrationsDisabledException class. + + The message that describes the error. + + + + Initializes a new instance of the MigrationsException class. + + The message that describes the error. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Provides additional metadata about a code-based migration. + + + + + Gets the unique identifier for the migration. + + + + + Gets the state of the model before this migration is run. + + + + + Gets the state of the model after this migration is run. + + + + + Decorator to provide logging during migrations operations.. + + + + + Initializes a new instance of the MigratorLoggingDecorator class. + + The migrator that this decorator is wrapping. + The logger to write messages to. + + + + Decorator to produce a SQL script instead of applying changes to the database. + Using this decorator to wrap will prevent + from applying any changes to the target database. + + + + + Initializes a new instance of the MigratorScriptingDecorator class. + + The migrator that this decorator is wrapping. + + + + Produces a script to update the database. + + + The migration to update from. If null is supplied, a script to update the + current database will be produced. + + + The migration to update to. If null is supplied, + a script to update to the latest migration will be produced. + + The generated SQL script. + + + + Represents a column being added to a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the AddColumnOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table the column should be added to. + Details of the column being added. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the table the column should be added to. + + + + + Gets the details of the column being added. + + + + + Gets an operation that represents dropping the added column. + + + + + + + + Represents a foreign key constraint being added to a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Base class for changes that affect foreign key constraints. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the ForeignKeyOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets or sets the name of the table that the foreign key constraint targets. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets or sets the name of the table that the foreign key columns exist in. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + The names of the foreign key column(s). + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets a value indicating if a specific name has been supplied for this foreign key constraint. + + + + + Gets or sets the name of this foreign key constraint. + If no name is supplied, a default name will be calculated. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the AddForeignKeyOperation class. + The PrincipalTable, PrincipalColumns, DependentTable and DependentColumns properties should also be populated. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets an operation to create an index on the foreign key column(s). + + An operation to add the index. + + + + The names of the column(s) that the foreign key constraint should target. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets or sets a value indicating if cascade delete should be configured on the foreign key constraint. + + + + + Gets an operation to drop the foreign key constraint. + + + + + + + + Represents adding a primary key to a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Common base class to represent operations affecting primary keys. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Returns the default name for the primary key. + + The target table name. + The default primary key name. + + + + Initializes a new instance of the PrimaryKeyOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets or sets the name of the table that contains the primary key. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets the column(s) that make up the primary key. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets a value indicating if a specific name has been supplied for this primary key. + + + + + Gets or sets the name of this primary key. + If no name is supplied, a default name will be calculated. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + + + + Initializes a new instance of the AddPrimaryKeyOperation class. + The Table and Columns properties should also be populated. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets an operation to drop the primary key. + + + + + Gets or sets whether this is a clustered primary key. + + + + + Represents altering an existing column. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the AlterColumnOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table that the column belongs to. + Details of what the column should be altered to. + Value indicating if this change will result in data loss. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Initializes a new instance of the AlterColumnOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table that the column belongs to. + Details of what the column should be altered to. + Value indicating if this change will result in data loss. + An operation to revert this alteration of the column. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the table that the column belongs to. + + + + + Gets the new definition for the column. + + + + + Gets an operation that represents reverting the alteration. + The inverse cannot be automatically calculated, + if it was not supplied to the constructor this property will return null. + + + + + + + + Represents information about a column. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the ColumnModel class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The data type for this column. + + + + Initializes a new instance of the ColumnModel class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The data type for this column. + Additional details about the data type. This includes details such as maximum length, nullability etc. + + + + Determines if this column is a narrower data type than another column. + Used to determine if altering the supplied column definition to this definition will result in data loss. + + The column to compare to. + Details of the database provider being used. + True if this column is of a narrower data type. + + + + Gets the CLR type corresponding to the database type of this column. + + + + + Gets the default value for the CLR type corresponding to the database type of this column. + + + + + Gets or sets a value indicating if this column can store null values. + + + + + Gets or sets a value indicating if values for this column will be generated by the database using the identity pattern. + + + + + Gets or sets a value indicating if this property model should be configured as a timestamp. + + + + + Gets or sets the custom annotations that have changed on the column. + + + + + Represents creating a database index. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Common base class for operations affecting indexes. + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Creates a default index name based on the supplied column names. + + The column names used to create a default index name. + A default index name. + + + + Initializes a new instance of the IndexOperation class. + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + Additional arguments that may be processed by providers. Use anonymous type syntax to + specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + + Gets or sets the table the index belongs to. + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets the columns that are indexed. + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets a value indicating if a specific name has been supplied for this index. + + + + + Gets or sets the name of this index. + If no name is supplied, a default name will be calculated. + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the CreateIndexOperation class. + The Table and Columns properties should also be populated. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets or sets a value indicating if this is a unique index. + + + + + Gets an operation to drop this index. + + + + + + + + Gets or sets whether this is a clustered index. + + + + + Represents creating a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the CreateTableOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Name of the table to be created. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Initializes a new instance of the CreateTableOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Name of the table to be created. + Custom annotations that exist on the table to be created. May be null or empty. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the table to be created. + + + + + Gets the columns to be included in the new table. + + + + + Gets or sets the primary key for the new table. + + + + + Gets custom annotations that exist on the table to be created. + + + + + Gets an operation to drop the table. + + + + + + + + Represents a column being dropped from a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the DropColumnOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table the column should be dropped from. + The name of the column to be dropped. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Initializes a new instance of the DropColumnOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table the column should be dropped from. + The name of the column to be dropped. + Custom annotations that exist on the column that is being dropped. May be null or empty. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Initializes a new instance of the DropColumnOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table the column should be dropped from. + The name of the column to be dropped. + The operation that represents reverting the drop operation. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Initializes a new instance of the DropColumnOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table the column should be dropped from. + The name of the column to be dropped. + Custom annotations that exist on the column that is being dropped. May be null or empty. + The operation that represents reverting the drop operation. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the table the column should be dropped from. + + + + + Gets the name of the column to be dropped. + + + + + Gets custom annotations that exist on the column that is being dropped. + + + + + Gets an operation that represents reverting dropping the column. + The inverse cannot be automatically calculated, + if it was not supplied to the constructor this property will return null. + + + + + + + + Represents a foreign key constraint being dropped from a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the DropForeignKeyOperation class. + The PrincipalTable, DependentTable and DependentColumns properties should also be populated. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Initializes a new instance of the DropForeignKeyOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc.. + + The operation that represents reverting dropping the foreign key constraint. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets an operation to drop the associated index on the foreign key column(s). + + An operation to drop the index. + + + + Gets an operation that represents reverting dropping the foreign key constraint. + The inverse cannot be automatically calculated, + if it was not supplied to the constructor this property will return null. + + + + + + + + Represents dropping an existing index. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the DropIndexOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Initializes a new instance of the DropIndexOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The operation that represents reverting dropping the index. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets an operation that represents reverting dropping the index. + The inverse cannot be automatically calculated, + if it was not supplied to the constructor this property will return null. + + + + + + + + Represents dropping a primary key from a table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the DropPrimaryKeyOperation class. + The Table and Columns properties should also be populated. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets an operation to add the primary key. + + + + + Used when altering the migrations history table so that the table can be rebuilt rather than just dropping and adding the primary key. + + + The create table operation for the migrations history table. + + + + + Represents dropping an existing table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the DropTableOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table to be dropped. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Initializes a new instance of the DropTableOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table to be dropped. + Custom annotations that exist on the table that is being dropped. May be null or empty. + Custom annotations that exist on columns of the table that is being dropped. May be null or empty. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Initializes a new instance of the DropTableOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table to be dropped. + An operation that represents reverting dropping the table. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Initializes a new instance of the DropTableOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The name of the table to be dropped. + Custom annotations that exist on the table that is being dropped. May be null or empty. + Custom annotations that exist on columns of the table that is being dropped. May be null or empty. + An operation that represents reverting dropping the table. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the table to be dropped. + + + + + Gets custom annotations that exist on the table that is being dropped. + + + + + Gets custom annotations that exist on columns of the table that is being dropped. + + + + + Gets an operation that represents reverting dropping the table. + The inverse cannot be automatically calculated, + if it was not supplied to the constructor this property will return null. + + + + + + + + Operation representing DML changes to the migrations history table. + The migrations history table is used to store a log of the migrations that have been applied to the database. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the HistoryOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + A sequence of command trees representing the operations being applied to the history table. + Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + A sequence of commands representing the operations being applied to the history table. + + + + + + + + Represents moving a table from one schema to another. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the MoveTableOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Name of the table to be moved. + Name of the schema to move the table to. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the table to be moved. + + + + + Gets the name of the schema to move the table to. + + + + + Gets an operation that moves the table back to its original schema. + + + + + + + + Used when altering the migrations history table so that data can be moved to the new table. + + + The context key for the model. + + + + + Gets a value that indicates whether this is a system table. + + + true if the table is a system table; otherwise, false. + + + + + Used when altering the migrations history table so that the table can be rebuilt rather than just dropping and adding the primary key. + + + The create table operation for the migrations history table. + + + + + Represents renaming an existing column. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the RenameColumnOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Name of the table the column belongs to. + Name of the column to be renamed. + New name for the column. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the table the column belongs to. + + + + + Gets the name of the column to be renamed. + + + + + Gets the new name for the column. + + + + + Gets an operation that reverts the rename. + + + + + + + + Represents renaming an existing table. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the RenameTableOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + Name of the table to be renamed. + New name for the table. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the name of the table to be renamed. + + + + + Gets the new name for the table. + + + + + Gets an operation that reverts the rename. + + + + + + + + Represents a provider specific SQL statement to be executed directly against the target database. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Initializes a new instance of the SqlOperation class. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + The SQL to be executed. + Additional arguments that may be processed by providers. Use anonymous type syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'. + + + + Gets the SQL to be executed. + + + + + Gets or sets a value indicating whether this statement should be performed outside of + the transaction scope that is used to make the migration process transactional. + If set to true, this operation will not be rolled back if the migration process fails. + + + + + + + + Common base class for providers that convert provider agnostic migration + operations into database provider specific SQL commands. + + + + + Converts a set of migration operations into database provider specific SQL. + + The operations to be converted. + Token representing the version of the database being targeted. + A list of SQL statements to be executed to perform the migration operations. + + + + Generates the SQL body for a stored procedure. + + The command trees representing the commands for an insert, update or delete operation. + The rows affected parameter name. + The provider manifest token. + The SQL body for the stored procedure. + + + + Builds the store type usage for the specified using the facets from the specified . + + Name of the store type. + The target property. + A store-specific TypeUsage + + + + Gets or sets the provider manifest. + + + The provider manifest. + + + + + Represents a migration operation that has been translated into a SQL statement. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets or sets the SQL to be executed to perform this migration operation. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + + + Gets or sets a value indicating whether this statement should be performed outside of + the transaction scope that is used to make the migration process transactional. + If set to true, this operation will not be rolled back if the migration process fails. + + + + + Gets or sets the batch terminator for the database provider. + + Entity Framework Migrations APIs are not designed to accept input provided by untrusted sources + (such as the end user of an application). If input is accepted from such sources it should be validated + before being passed to these APIs to protect against SQL injection attacks etc. + + + The batch terminator for the database provider. + + + + + Extension methods for . + + + + + Returns an implementation that stays in sync with the given + . + + The element type. + The collection that the binding list will stay in sync with. + The binding list. + + + + Represents data in a geodetic (round earth) coordinate system. + + + + + Creates a new value based on the specified well known binary value. + + + A new DbGeography value as defined by the well known binary value with the default geography coordinate system identifier (SRID)( + + ). + + A byte array that contains a well known binary representation of the geography value. + + + + Creates a new value based on the specified well known binary value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the well known binary value with the specified coordinate system identifier. + A byte array that contains a well known binary representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + + Creates a new line value based on the specified well known binary value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the well known binary value with the specified coordinate system identifier. + A byte array that contains a well known binary representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + + Creates a new point value based on the specified well known binary value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the well known binary value with the specified coordinate system identifier. + A byte array that contains a well known binary representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + + Creates a new polygon value based on the specified well known binary value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the well known binary value with the specified coordinate system identifier. + A byte array that contains a well known binary representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + Returns the multiline value from a binary value. + The multiline value from a binary value. + The well-known binary value. + The coordinate system identifier. + + + Returns the multipoint value from a well-known binary value. + The multipoint value from a well-known binary value. + The well-known binary value. + The coordinate system identifier. + + + Returns the multi polygon value from a well-known binary value. + The multi polygon value from a well-known binary value. + The multi polygon well-known binary value. + The coordinate system identifier. + + + + Creates a new collection value based on the specified well known binary value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the well known binary value with the specified coordinate system identifier. + A byte array that contains a well known binary representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + + Creates a new value based on the specified Geography Markup Language (GML) value. + + + A new DbGeography value as defined by the GML value with the default geography coordinate system identifier (SRID) ( + + ). + + A string that contains a Geography Markup Language (GML) representation of the geography value. + + + + Creates a new value based on the specified Geography Markup Language (GML) value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the GML value with the specified coordinate system identifier. + A string that contains a Geography Markup Language (GML) representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + + Creates a new value based on the specified well known text value. + + + A new DbGeography value as defined by the well known text value with the default geography coordinate system identifier (SRID) ( + + ). + + A string that contains a well known text representation of the geography value. + + + + Creates a new value based on the specified well known text value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the well known text value with the specified coordinate system identifier. + A string that contains a well known text representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + + Creates a new line value based on the specified well known text value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the well known text value with the specified coordinate system identifier. + A string that contains a well known text representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + + Creates a new point value based on the specified well known text value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the well known text value with the specified coordinate system identifier. + A string that contains a well known text representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + + Creates a new polygon value based on the specified well known text value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the well known text value with the specified coordinate system identifier. + A string that contains a well known text representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + Returns the multiline value from a well-known text value. + The multiline value from a well-known text value. + The well-known text. + The coordinate system identifier. + + + Returns the multipoint value from a well-known text value. + The multipoint value from a well-known text value. + The well-known text value. + The coordinate system identifier. + + + Returns the multi polygon value from a well-known text value. + The multi polygon value from a well-known text value. + The multi polygon well-known text value. + The coordinate system identifier. + + + + Creates a new collection value based on the specified well known text value and coordinate system identifier (SRID). + + A new DbGeography value as defined by the well known text value with the specified coordinate system identifier. + A string that contains a well known text representation of the geography value. + The identifier of the coordinate system that the new DbGeography value should use. + + + Generates the well known text representation of this DbGeography value. Includes only Longitude and Latitude for points. + A string containing the well known text representation of this DbGeography value. + + + Generates the well known binary representation of this DbGeography value. + The well-known binary representation of this DbGeography value. + + + Generates the Geography Markup Language (GML) representation of this DbGeography value. + A string containing the GML representation of this DbGeography value. + + + Determines whether this DbGeography is spatially equal to the specified DbGeography argument. + true if other is spatially equal to this geography value; otherwise false. + The geography value that should be compared with this geography value for equality. + + + Determines whether this DbGeography is spatially disjoint from the specified DbGeography argument. + true if other is disjoint from this geography value; otherwise false. + The geography value that should be compared with this geography value for disjointness. + + + Determines whether this DbGeography value spatially intersects the specified DbGeography argument. + true if other intersects this geography value; otherwise false. + The geography value that should be compared with this geography value for intersection. + + + Returns a geography object that represents the union of all points whose distance from a geography instance is less than or equal to a specified value. + A geography object that represents the union of all points + The distance. + + + Computes the distance between the closest points in this DbGeography value and another DbGeography value. + A double value that specifies the distance between the two closest points in this geography value and other. + The geography value for which the distance from this value should be computed. + + + Computes the intersection of this DbGeography value and another DbGeography value. + A new DbGeography value representing the intersection between this geography value and other. + The geography value for which the intersection with this value should be computed. + + + Computes the union of this DbGeography value and another DbGeography value. + A new DbGeography value representing the union between this geography value and other. + The geography value for which the union with this value should be computed. + + + Computes the difference of this DbGeography value and another DbGeography value. + A new DbGeography value representing the difference between this geography value and other. + The geography value for which the difference with this value should be computed. + + + Computes the symmetric difference of this DbGeography value and another DbGeography value. + A new DbGeography value representing the symmetric difference between this geography value and other. + The geography value for which the symmetric difference with this value should be computed. + + + Returns an element of this DbGeography value from a specific position, if it represents a geography collection. <param name="index">The position within this geography value from which the element should be taken.</param><returns>The element in this geography value at the specified position, if it represents a collection of other geography values; otherwise null.</returns> + An element of this DbGeography value from a specific position + The index. + + + Returns an element of this DbGeography value from a specific position, if it represents a linestring or linear ring. <param name="index">The position within this geography value from which the element should be taken.</param><returns>The element in this geography value at the specified position, if it represents a linestring or linear ring; otherwise null.</returns> + An element of this DbGeography value from a specific position + The index. + + + Returns a string representation of the geography value. + A string representation of the geography value. + + + Gets the default coordinate system id (SRID) for geography values (WGS 84) + The default coordinate system id (SRID) for geography values (WGS 84) + + + Gets a representation of this DbGeography value that is specific to the underlying provider that constructed it. + A representation of this DbGeography value. + + + + Gets the spatial provider that will be used for operations on this spatial type. + + + + Gets or sets a data contract serializable well known representation of this DbGeography value. + A data contract serializable well known representation of this DbGeography value. + + + Gets the identifier associated with the coordinate system. + The identifier associated with the coordinate system. + + + + Gets the dimension of the given value or, if the value is a collections, the largest element dimension. + + + The dimension of the given value. + + + + Gets the spatial type name of the DBGeography. + The spatial type name of the DBGeography. + + + Gets a nullable Boolean value indicating whether this DbGeography value is empty. + True if this DbGeography value is empty; otherwise, false. + + + Gets the number of elements in this DbGeography value, if it represents a geography collection. <returns>The number of elements in this geography value, if it represents a collection of other geography values; otherwise null.</returns> + The number of elements in this DbGeography value. + + + Gets the Latitude coordinate of this DbGeography value, if it represents a point. <returns>The Latitude coordinate value of this geography value, if it represents a point; otherwise null.</returns> + The Latitude coordinate of this DbGeography value. + + + Gets the Longitude coordinate of this DbGeography value, if it represents a point. <returns>The Longitude coordinate value of this geography value, if it represents a point; otherwise null.</returns> + The Longitude coordinate of this DbGeography value. + + + Gets the elevation (Z coordinate) of this DbGeography value, if it represents a point. <returns>The elevation (Z coordinate) value of this geography value, if it represents a point; otherwise null.</returns> + The elevation (Z coordinate) of this DbGeography value. + + + Gets the M (Measure) coordinate of this DbGeography value, if it represents a point. <returns>The M (Measure) coordinate value of this geography value, if it represents a point; otherwise null.</returns> + The M (Measure) coordinate of this DbGeography value. + + + Gets a nullable double value that indicates the length of this DbGeography value, which may be null if this value does not represent a curve. + A nullable double value that indicates the length of this DbGeography value. + + + Gets a DbGeography value representing the start point of this value, which may be null if this DbGeography value does not represent a curve. + A DbGeography value representing the start point of this value. + + + Gets a DbGeography value representing the start point of this value, which may be null if this DbGeography value does not represent a curve. + A DbGeography value representing the start point of this value. + + + Gets a nullable Boolean value indicating whether this DbGeography value is closed, which may be null if this value does not represent a curve. + True if this DbGeography value is closed; otherwise, false. + + + Gets the number of points in this DbGeography value, if it represents a linestring or linear ring. <returns>The number of elements in this geography value, if it represents a linestring or linear ring; otherwise null.</returns> + The number of points in this DbGeography value. + + + Gets a nullable double value that indicates the area of this DbGeography value, which may be null if this value does not represent a surface. + A nullable double value that indicates the area of this DbGeography value. + + + + A data contract serializable representation of a value. + + + + Gets or sets the coordinate system identifier (SRID) of this value. + + + Gets or sets the well known text representation of this value. + + + Gets or sets the well known binary representation of this value. + + + + Represents geometric shapes. + + + + + Creates a new value based on the specified well known binary value. + + + A new DbGeometry value as defined by the well known binary value with the default geometry coordinate system identifier ( + + ). + + A byte array that contains a well known binary representation of the geometry value. + wellKnownBinary + + + + Creates a new value based on the specified well known binary value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the well known binary value with the specified coordinate system identifier. + A byte array that contains a well known binary representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + wellKnownBinary + coordinateSystemId + + + + Creates a new line value based on the specified well known binary value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the well known binary value with the specified coordinate system identifier. + A byte array that contains a well known binary representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + lineWellKnownBinary + coordinateSystemId + + + + Creates a new point value based on the specified well known binary value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the well known binary value with the specified coordinate system identifier. + A byte array that contains a well known binary representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + pointWellKnownBinary + coordinateSystemId + + + + Creates a new polygon value based on the specified well known binary value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the well known binary value with the specified coordinate system identifier. + A byte array that contains a well known binary representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + polygonWellKnownBinary + coordinateSystemId + + + Returns the multiline value from a binary value. + The multiline value from a binary value. + The well-known binary value. + The coordinate system identifier. + + + Returns the multipoint value from a well-known binary value. + The multipoint value from a well-known binary value. + The well-known binary value. + The coordinate system identifier. + + + Returns the multi polygon value from a well-known binary value. + The multipoint value from a well-known text value. + The multi polygon well-known text value. + The coordinate system identifier. + + + + Creates a new collection value based on the specified well known binary value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the well known binary value with the specified coordinate system identifier. + A byte array that contains a well known binary representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + geometryCollectionWellKnownBinary + coordinateSystemId + + + + Creates a new value based on the specified Geography Markup Language (GML) value. + + + A new DbGeometry value as defined by the GML value with the default geometry coordinate system identifier (SRID) ( + + ). + + A string that contains a Geography Markup Language (GML) representation of the geometry value. + geometryMarkup + + + + Creates a new value based on the specified Geography Markup Language (GML) value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the GML value with the specified coordinate system identifier. + A string that contains a Geography Markup Language (GML) representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + geometryMarkup + coordinateSystemId + + + + Creates a new value based on the specified well known text value. + + + A new DbGeometry value as defined by the well known text value with the default geometry coordinate system identifier (SRID) ( + + ). + + A string that contains a well known text representation of the geometry value. + wellKnownText + + + + Creates a new value based on the specified well known text value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the well known text value with the specified coordinate system identifier. + A string that contains a well known text representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + wellKnownText + coordinateSystemId + + + + Creates a new line value based on the specified well known text value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the well known text value with the specified coordinate system identifier. + A string that contains a well known text representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + lineWellKnownText + coordinateSystemId + + + + Creates a new point value based on the specified well known text value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the well known text value with the specified coordinate system identifier. + A string that contains a well known text representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + pointWellKnownText + coordinateSystemId + + + + Creates a new polygon value based on the specified well known text value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the well known text value with the specified coordinate system identifier. + A string that contains a well known text representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + polygonWellKnownText + coordinateSystemId + + + Returns the multiline value from a well-known text value. + The multiline value from a well-known text value. + The well-known text. + The coordinate system identifier. + + + Returns the multipoint value from a well-known text value. + The multipoint value from a well-known text value. + The well-known text value. + The coordinate system identifier. + + + Returns the multi polygon value from a well-known binary value. + The multi polygon value from a well-known binary value. + The multi polygon well-known text value. + The coordinate system identifier. + + + + Creates a new collection value based on the specified well known text value and coordinate system identifier (SRID). + + A new DbGeometry value as defined by the well known text value with the specified coordinate system identifier. + A string that contains a well known text representation of the geometry value. + The identifier of the coordinate system that the new DbGeometry value should use. + geometryCollectionWellKnownText + coordinateSystemId + + + Generates the well known text representation of this DbGeometry value. Includes only X and Y coordinates for points. + A string containing the well known text representation of this DbGeometry value. + + + Generates the well known binary representation of this DbGeometry value. + The well-known binary representation of this DbGeometry value. + + + Generates the Geography Markup Language (GML) representation of this DbGeometry value. + A string containing the GML representation of this DbGeometry value. + + + Determines whether this DbGeometry is spatially equal to the specified DbGeometry argument. + true if other is spatially equal to this geometry value; otherwise false. + The geometry value that should be compared with this geometry value for equality. + other + + + Determines whether this DbGeometry is spatially disjoint from the specified DbGeometry argument. + true if other is disjoint from this geometry value; otherwise false. + The geometry value that should be compared with this geometry value for disjointness. + other + + + Determines whether this DbGeometry value spatially intersects the specified DbGeometry argument. + true if other intersects this geometry value; otherwise false. + The geometry value that should be compared with this geometry value for intersection. + other + + + Determines whether this DbGeometry value spatially touches the specified DbGeometry argument. + true if other touches this geometry value; otherwise false. + The geometry value that should be compared with this geometry value. + other + + + Determines whether this DbGeometry value spatially crosses the specified DbGeometry argument. + true if other crosses this geometry value; otherwise false. + The geometry value that should be compared with this geometry value. + other + + + Determines whether this DbGeometry value is spatially within the specified DbGeometry argument. + true if this geometry value is within other; otherwise false. + The geometry value that should be compared with this geometry value for containment. + other + + + Determines whether this DbGeometry value spatially contains the specified DbGeometry argument. + true if this geometry value contains other; otherwise false. + The geometry value that should be compared with this geometry value for containment. + other + + + Determines whether this DbGeometry value spatially overlaps the specified DbGeometry argument. + true if this geometry value overlaps other; otherwise false. + The geometry value that should be compared with this geometry value for overlap. + other + + + Determines whether this DbGeometry value spatially relates to the specified DbGeometry argument according to the given Dimensionally Extended Nine-Intersection Model (DE-9IM) intersection pattern. + true if this geometry value relates to other according to the specified intersection pattern matrix; otherwise false. + The geometry value that should be compared with this geometry value for relation. + A string that contains the text representation of the (DE-9IM) intersection pattern that defines the relation. + othermatrix + + + Returns a geometry object that represents the union of all points whose distance from a geometry instance is less than or equal to a specified value. + A geometry object that represents the union of all points. + The distance. + + + Computes the distance between the closest points in this DbGeometry value and another DbGeometry value. + A double value that specifies the distance between the two closest points in this geometry value and other. + The geometry value for which the distance from this value should be computed. + other + + + Computes the intersection of this DbGeometry value and another DbGeometry value. + A new DbGeometry value representing the intersection between this geometry value and other. + The geometry value for which the intersection with this value should be computed. + other + + + Computes the union of this DbGeometry value and another DbGeometry value. + A new DbGeometry value representing the union between this geometry value and other. + The geometry value for which the union with this value should be computed. + other + + + Computes the difference between this DbGeometry value and another DbGeometry value. + A new DbGeometry value representing the difference between this geometry value and other. + The geometry value for which the difference with this value should be computed. + other + + + Computes the symmetric difference between this DbGeometry value and another DbGeometry value. + A new DbGeometry value representing the symmetric difference between this geometry value and other. + The geometry value for which the symmetric difference with this value should be computed. + other + + + Returns an element of this DbGeometry value from a specific position, if it represents a geometry collection. <param name="index">The position within this geometry value from which the element should be taken.</param><returns>The element in this geometry value at the specified position, if it represents a collection of other geometry values; otherwise null.</returns> + An element of this DbGeometry value from a specific position. + The index. + + + Returns an element of this DbGeometry value from a specific position, if it represents a linestring or linear ring. <param name="index">The position within this geometry value from which the element should be taken.</param><returns>The element in this geometry value at the specified position, if it represents a linestring or linear ring; otherwise null.</returns> + An element of this DbGeometry value from a specific position. + The index. + + + Returns an interior ring from this DbGeometry value at a specific position, if it represents a polygon. <param name="index">The position within this geometry value from which the interior ring should be taken.</param><returns>The interior ring in this geometry value at the specified position, if it represents a polygon; otherwise null.</returns> + An interior ring from this DbGeometry value at a specific position. + The index. + + + Returns a string representation of the geometry value. + A string representation of the geometry value. + + + Gets the default coordinate system id (SRID) for geometry values. + The default coordinate system id (SRID) for geometry values. + + + Gets a representation of this DbGeometry value that is specific to the underlying provider that constructed it. + A representation of this DbGeometry value. + + + + Gets the spatial provider that will be used for operations on this spatial type. + + + + Gets or sets a data contract serializable well known representation of this DbGeometry value. + A data contract serializable well known representation of this DbGeometry value. + + + Gets the coordinate system identifier of the DbGeometry object. + The coordinate system identifier of the DbGeometry object. + + + Gets the boundary of the DbGeometry objects. + The boundary of the DbGeometry objects. + + + + Gets the dimension of the given value or, if the value is a collection, the dimension of its largest element. + + + The dimension of the given value. + + + + Gets the envelope (minimum bounding box) of this DbGeometry value, as a geometry value. + The envelope (minimum bounding box) of this DbGeometry value. + + + Gets a spatial type name representation of this DbGeometry value. + A spatial type name representation of this DbGeometry value. + + + Gets a nullable Boolean value indicating whether this DbGeometry value is empty, which may be null if this value does not represent a curve. + True if this DbGeometry value is empty; otherwise, false. + + + Gets a nullable Boolean value indicating whether this DbGeometry value is simple. + True if this DbGeometry value is simple; otherwise, false. + + + Gets a nullable Boolean value indicating whether this DbGeometry value is valid. + True if this DbGeometry value is valid; otherwise, false. + + + Gets the convex hull of this DbGeometry value as another DbGeometry value. + The convex hull of this DbGeometry value as another DbGeometry value. + + + Gets the number of elements in this DbGeometry value, if it represents a geometry collection. <returns>The number of elements in this geometry value, if it represents a collection of other geometry values; otherwise null.</returns> + The number of elements in this DbGeometry value. + + + Gets the X coordinate of this DbGeometry value, if it represents a point. <returns>The X coordinate value of this geometry value, if it represents a point; otherwise null.</returns> + The X coordinate of this DbGeometry value. + + + Gets the Y coordinate of this DbGeometry value, if it represents a point. <returns>The Y coordinate value of this geometry value, if it represents a point; otherwise null.</returns> + The Y coordinate of this DbGeometry value. + + + Gets the elevation (Z coordinate) of this DbGeometry value, if it represents a point. <returns>The elevation (Z coordinate) of this geometry value, if it represents a point; otherwise null.</returns> + The elevation (Z coordinate) of this DbGeometry value. + + + Gets the Measure (M coordinate) of this DbGeometry value, if it represents a point. <returns>The Measure (M coordinate) value of this geometry value, if it represents a point; otherwise null.</returns> + The Measure (M coordinate) of this DbGeometry value. + + + Gets a nullable double value that indicates the length of this DbGeometry value, which may be null if this value does not represent a curve. + The length of this DbGeometry value. + + + Gets a DbGeometry value representing the start point of this value, which may be null if this DbGeometry value does not represent a curve. + A DbGeometry value representing the start point of this value. + + + Gets a DbGeometry value representing the start point of this value, which may be null if this DbGeometry value does not represent a curve. + A DbGeometry value representing the start point of this value. + + + Gets a nullable Boolean value indicating whether this DbGeometry value is closed, which may be null if this value does not represent a curve. + True if this DbGeometry value is closed; otherwise, false. + + + Gets a nullable Boolean value indicating whether this DbGeometry value is a ring, which may be null if this value does not represent a curve. + True if this DbGeometry value is a ring; otherwise, false. + + + Gets the number of points in this DbGeometry value, if it represents a linestring or linear ring. <returns>The number of elements in this geometry value, if it represents a linestring or linear ring; otherwise null.</returns> + The number of points in this DbGeometry value. + + + Gets a nullable double value that indicates the area of this DbGeometry value, which may be null if this value does not represent a surface. + A nullable double value that indicates the area of this DbGeometry value. + + + Gets the DbGeometry value that represents the centroid of this DbGeometry value, which may be null if this value does not represent a surface. + The DbGeometry value that represents the centroid of this DbGeometry value. + + + Gets a point on the surface of this DbGeometry value, which may be null if this value does not represent a surface. + A point on the surface of this DbGeometry value. + + + Gets the DbGeometry value that represents the exterior ring of this DbGeometry value, which may be null if this value does not represent a polygon. + The DbGeometry value that represents the exterior ring of this DbGeometry value. + + + Gets the number of interior rings in this DbGeometry value, if it represents a polygon. <returns>The number of elements in this geometry value, if it represents a polygon; otherwise null.</returns> + The number of interior rings in this DbGeometry value. + + + + A data contract serializable representation of a value. + + + + Gets or sets the coordinate system identifier (SRID) of this value. + + + Gets or sets the well known text representation of this value. + + + Gets or sets the well known binary representation of this value. + + + + A provider-independent service API for geospatial (Geometry/Geography) type support. + + + + + When implemented in derived types, reads an instance of from the column at the specified column ordinal. + + The instance of DbGeography at the specified column value + The ordinal of the column that contains the geography value + + + + Asynchronously reads an instance of from the column at the specified column ordinal. + + + Providers should override with an appropriate implementation. + The default implementation invokes the synchronous method and returns + a completed task, blocking the calling thread. + + The ordinal of the column that contains the geography value. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the instance of at the specified column value. + + + + + When implemented in derived types, reads an instance of from the column at the specified column ordinal. + + The instance of DbGeometry at the specified column value + The ordinal of the data record column that contains the provider-specific geometry data + + + + Asynchronously reads an instance of from the column at the specified column ordinal. + + + Providers should override with an appropriate implementation. + The default implementation invokes the synchronous method and returns + a completed task, blocking the calling thread. + + The ordinal of the data record column that contains the provider-specific geometry data. + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the instance of at the specified column value. + + + + + Returns whether the column at the specified column ordinal is of geography type + + The column ordinal. + + true if the column at the specified column ordinal is of geography type; + false otherwise. + + + + + Returns whether the column at the specified column ordinal is of geometry type + + The column ordinal. + + true if the column at the specified column ordinal is of geometry type; + false otherwise. + + + + + A provider-independent service API for geospatial (Geometry/Geography) type support. + + + + + This method is intended for use by derived implementations of + + after suitable validation of the specified provider value to ensure it is suitable for use with the derived implementation. + + + A new instance that contains the specified providerValue and uses the specified spatialServices as its spatial implementation. + + + The spatial services instance that the returned value will depend on for its implementation of spatial functionality. + + The provider value. + + + + Creates a new value based on a provider-specific value that is compatible with this spatial services implementation. + + + A new value backed by this spatial services implementation and the specified provider value. + + A provider-specific value that this spatial services implementation is capable of interpreting as a geography value. + A new DbGeography value backed by this spatial services implementation and the specified provider value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Creates a provider-specific value compatible with this spatial services implementation based on the specified well-known + + representation. + + A provider-specific value that encodes the information contained in wellKnownValue in a fashion compatible with this spatial services implementation. + + An instance of that contains the well-known representation of a geography value. + + + + + Creates an instance of that represents the specified + + value using one or both of the standard well-known spatial formats. + + + The well-known representation of geographyValue, as a new + + . + + The geography value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Creates a new value based on the specified well-known binary value. + + + A new value as defined by the well-known binary value with the default + + coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geography value. + + + + Creates a new value based on the specified well-known binary value and coordinate system identifier (SRID). + + + A new value as defined by the well-known binary value with the specified coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new line value based on the specified well-known binary value and coordinate system identifier (SRID). + + + A new value as defined by the well-known binary value with the specified coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new point value based on the specified well-known binary value and coordinate system identifier (SRID). + + + A new value as defined by the well-known binary value with the specified coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new polygon value based on the specified well-known binary value and coordinate system identifier (SRID). + + + A new value as defined by the well-known binary value with the specified coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new multiline value based on the specified well-known binary value and coordinate system identifier. + + + The new multiline value. + + The well-known binary value. + The coordinate system identifier. + + + + Creates a new multipoint value based on the specified well-known binary value and coordinate system identifier. + + + A new multipoint value. + + The well-known binary value. + The coordinate system identifier. + + + + Creates a new multi polygon value based on the specified well-known binary value and coordinate system identifier. + + + A new multi polygon value. + + The well-known binary value. + The coordinate system identifier. + + + + Creates a new collection value based on the specified well-known binary value and coordinate system identifier (SRID). + + + A new value as defined by the well-known binary value with the specified coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new value based on the specified well-known text value. + + + A new value as defined by the well-known text value with the default + + coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geography value. + + + + Creates a new value based on the specified well-known text value and coordinate system identifier (SRID). + + + A new value as defined by the well-known text value with the specified coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new line value based on the specified well-known text value and coordinate system identifier (SRID). + + + A new value as defined by the well-known text value with the specified coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new point value based on the specified well-known text value and coordinate system identifier (SRID). + + + A new value as defined by the well-known text value with the specified coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new polygon value based on the specified well-known text value and coordinate system identifier (SRID). + + + A new value as defined by the well-known text value with the specified coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new multiline value based on the specified well-known text value and coordinate system identifier. + + + A new multiline value. + + The well-known text value. + The coordinate system identifier. + + + + Creates a new multipoint value based on the specified well-known text value and coordinate system identifier. + + + A new multipoint value. + + The well-known text value. + The coordinate system identifier. + + + + Creates a new multi polygon value based on the specified well-known text value and coordinate system identifier. + + + A new multi polygon value. + + The well-known text value. + The coordinate system identifier. + + + + Creates a new collection value based on the specified well-known text value and coordinate system identifier (SRID). + + + A new value as defined by the well-known text value with the specified coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new value based on the specified Geography Markup Language (GML) value. + + + A new value as defined by the GML value with the default + + coordinate system identifier (SRID) ( + + ). + + A string that contains a Geometry Markup Language (GML) representation of the geography value. + + + + Creates a new value based on the specified Geography Markup Language (GML) value and coordinate system identifier (SRID). + + + A new value as defined by the GML value with the specified coordinate system identifier (SRID). + + A string that contains a Geometry Markup Language (GML) representation of the geography value. + + The identifier of the coordinate system that the new value should use. + + + + + Returns the coordinate system identifier of the given value. + + + The coordinate system identifier of the given value. + + The geography value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Gets the dimension of the given value or, if the value is a collections, the largest element dimension. + + + The dimension of geographyValue, or the largest element dimension if + + is a collection. + + The geography value for which the dimension value should be retrieved. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a value that indicates the spatial type name of the given + + value. + + + The spatial type name of the given value. + + The geography value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable Boolean value that whether the given value is empty. + + + True if the given value is empty; otherwise, false. + + The geography value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Gets the well-known text representation of the given value. This value should include only the Longitude and Latitude of points. + + A string containing the well-known text representation of geographyValue. + The geography value for which the well-known text should be generated. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a text representation of with elevation and measure. + + + A text representation of . + + The geography value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Gets the well-known binary representation of the given value. + + + The well-known binary representation of the given value. + + The geography value for which the well-known binary should be generated. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Generates the Geography Markup Language (GML) representation of this + + value. + + A string containing the GML representation of this DbGeography value. + The geography value for which the GML should be generated. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Determines whether the two given values are spatially equal. + + true if geographyValue is spatially equal to otherGeography; otherwise false. + The first geography value to compare for equality. + The second geography value to compare for equality. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Determines whether the two given values are spatially disjoint. + + true if geographyValue is disjoint from otherGeography; otherwise false. + The first geography value to compare for disjointness. + The second geography value to compare for disjointness. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Determines whether the two given values spatially intersect. + + true if geographyValue intersects otherGeography; otherwise false. + The first geography value to compare for intersection. + The second geography value to compare for intersection. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Creates a geography value representing all points less than or equal to distance from the given + + value. + + A new DbGeography value representing all points less than or equal to distance from geographyValue. + The geography value. + A double value specifying how far from geographyValue to buffer. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Computes the distance between the closest points in two values. + + A double value that specifies the distance between the two closest points in geographyValue and otherGeography. + The first geography value. + The second geography value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Computes the intersection of two values. + + + A new value representing the intersection of geographyValue and otherGeography. + + The first geography value. + The second geography value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Computes the union of two values. + + + A new value representing the union of geographyValue and otherGeography. + + The first geography value. + The second geography value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Computes the difference of two values. + + A new DbGeography value representing the difference of geographyValue and otherGeography. + The first geography value. + The second geography value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Computes the symmetric difference of two values. + + + A new value representing the symmetric difference of geographyValue and otherGeography. + + The first geography value. + The second geography value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Returns the number of elements in the given value, if it represents a geography collection. + + The number of elements in geographyValue, if it represents a collection of other geography values; otherwise null. + The geography value, which need not represent a geography collection. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns an element of the given value, if it represents a geography collection. + + The element in geographyValue at position index, if it represents a collection of other geography values; otherwise null. + The geography value, which need not represent a geography collection. + The position within the geography value from which the element should be taken. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the Latitude coordinate of the given value, if it represents a point. + + + The Latitude coordinate of the given value. + + The geography value, which need not represent a point. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the Longitude coordinate of the given value, if it represents a point. + + + The Longitude coordinate of the given value. + + The geography value, which need not represent a point. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the elevation (Z coordinate) of the given value, if it represents a point. + + The elevation (Z coordinate) of geographyValue, if it represents a point; otherwise null. + The geography value, which need not represent a point. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the M (Measure) coordinate of the given value, if it represents a point. + + + The M (Measure) coordinate of the given value. + + The geography value, which need not represent a point. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable double value that indicates the length of the given + + value, which may be null if the value does not represent a curve. + + + The length of the given value. + + The geography value, which need not represent a curve. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a value that represents the start point of the given DbGeography value, which may be null if the value does not represent a curve. + + + The start point of the given value. + + The geography value, which need not represent a curve. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a value that represents the end point of the given DbGeography value, which may be null if the value does not represent a curve. + + The end point of geographyValue, if it represents a curve; otherwise null. + The geography value, which need not represent a curve. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable Boolean value that whether the given value is closed, which may be null if the value does not represent a curve. + + + True if the given value is closed; otherwise, false. + + The geography value, which need not represent a curve. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the number of points in the given value, if it represents a linestring or linear ring. + + + The number of points in the given value. + + The geography value, which need not represent a linestring or linear ring. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a point element of the given value, if it represents a linestring or linear ring. + + The point in geographyValue at position index, if it represents a linestring or linear ring; otherwise null. + The geography value, which need not represent a linestring or linear ring. + The position within the geography value from which the element should be taken. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable double value that indicates the area of the given + + value, which may be null if the value does not represent a surface. + + + A nullable double value that indicates the area of the given value. + + The geography value, which need not represent a surface. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + This method is intended for use by derived implementations of + + after suitable validation of the specified provider value to ensure it is suitable for use with the derived implementation. + + + A new instance that contains the specified providerValue and uses the specified spatialServices as its spatial implementation. + + + The spatial services instance that the returned value will depend on for its implementation of spatial functionality. + + A provider value. + + + + Creates a provider-specific value compatible with this spatial services implementation based on the specified well-known + + representation. + + A provider-specific value that encodes the information contained in wellKnownValue in a fashion compatible with this spatial services implementation. + + An instance of that contains the well-known representation of a geometry value. + + + + + Creates an instance of that represents the specified + + value using one or both of the standard well-known spatial formats. + + + The well-known representation of geometryValue, as a new + + . + + The geometry value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Creates a new value based on a provider-specific value that is compatible with this spatial services implementation. + + + A new value backed by this spatial services implementation and the specified provider value. + + A provider-specific value that this spatial services implementation is capable of interpreting as a geometry value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Creates a new value based on the specified well-known binary value. + + + A new value as defined by the well-known binary value with the default + + coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geometry value. + + + + Creates a new value based on the specified well-known binary value and coordinate system identifier (SRID). + + + A new value as defined by the well-known binary value with the specified coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new line value based on the specified well-known binary value and coordinate system identifier (SRID). + + + A new value as defined by the well-known binary value with the specified coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new point value based on the specified well-known binary value and coordinate system identifier (SRID). + + + A new value as defined by the well-known binary value with the specified coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new polygon value based on the specified well-known binary value and coordinate system identifier (SRID). + + + A new value as defined by the well-known binary value with the specified coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new multiline value based on the specified well-known binary value and coordinate system identifier. + + + The new multiline value + + The well-known binary value. + The coordinate system identifier. + + + + Creates a new multipoint value based on the specified well-known binary value and coordinate system identifier. + + + A new multipoint value. + + The well-known binary value. + The coordinate system identifier. + + + + Creates a new multi polygon value based on the specified well-known binary value and coordinate system identifier. + + + A new multi polygon value. + + The well-known binary value. + The coordinate system identifier. + + + + Creates a new collection value based on the specified well-known binary value and coordinate system identifier (SRID). + + + A new value as defined by the well-known binary value with the specified coordinate system identifier (SRID) ( + + ). + + A byte array that contains a well-known binary representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new value based on the specified well-known text value. + + + A new value as defined by the well-known text value with the default + + coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geometry value. + + + + Creates a new value based on the specified well-known text value and coordinate system identifier (SRID). + + + A new value as defined by the well-known text value with the specified coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new line value based on the specified well-known text value and coordinate system identifier (SRID). + + + A new value as defined by the well-known text value with the specified coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new point value based on the specified well-known text value and coordinate system identifier (SRID). + + + A new value as defined by the well-known text value with the specified coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new polygon value based on the specified well-known text value and coordinate system identifier (SRID). + + + A new value as defined by the well-known text value with the specified coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new multiline value based on the specified well-known text value and coordinate system identifier. + + + A new multiline value + + The well-known text value. + The coordinate system identifier. + + + + Creates a new multipoint value based on the specified well-known text value and coordinate system identifier. + + + A new multipoint value. + + The well-known text value. + The coordinate system identifier. + + + + Creates a new multi polygon value based on the specified well-known text value and coordinate system identifier. + + + A new multi polygon value. + + The well-known text value. + The coordinate system identifier. + + + + Creates a new collection value based on the specified well-known text value and coordinate system identifier (SRID). + + + A new value as defined by the well-known text value with the specified coordinate system identifier (SRID) ( + + ). + + A string that contains a well-known text representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Creates a new value based on the specified Geography Markup Language (GML) value. + + + A new value as defined by the GML value with the default + + coordinate system identifier (SRID) ( + + ). + + A string that contains a Geography Markup Language (GML) representation of the geometry value. + + + + Creates a new value based on the specified Geography Markup Language (GML) value and coordinate system identifier (SRID). + + + A new value as defined by the GML value with the specified coordinate system identifier (SRID). + + A string that contains a Geography Markup Language (GML) representation of the geometry value. + + The identifier of the coordinate system that the new value should use. + + + + + Returns the coordinate system identifier of the given value. + + + The coordinate system identifier of the given value. + + The geometry value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable double value that indicates the boundary of the given + + value. + + + The boundary of the given value. + + The geometry value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Gets the dimension of the given value or, if the value is a collections, the largest element dimension. + + + The dimension of geometryValue, or the largest element dimension if + + is a collection. + + The geometry value for which the dimension value should be retrieved. + + + + Gets the envelope (minimum bounding box) of the given value, as a geometry value. + + + The envelope of geometryValue, as a value. + + The geometry value for which the envelope value should be retrieved. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a value that indicates the spatial type name of the given + + value. + + + The spatial type name of the given value. + + The geometry value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable Boolean value that whether the given value is empty. + + + True if the given value is empty; otherwise, false. + + The geometry value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable Boolean value that whether the given value is simple. + + + True if the given value is simple; otherwise, false. + + The geometry value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable Boolean value that whether the given value is valid. + + + True if the given value is valid; otherwise, false. + + The geometry value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Gets the well-known text representation of the given value, including only X and Y coordinates for points. + + A string containing the well-known text representation of geometryValue. + The geometry value for which the well-known text should be generated. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a text representation of with elevation and measure. + + + A text representation of with elevation and measure. + + The geometry value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Gets the well-known binary representation of the given value. + + + The well-known binary representation of the given value. + + The geometry value for which the well-known binary should be generated. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Generates the Geography Markup Language (GML) representation of this + + value. + + A string containing the GML representation of this DbGeometry value. + The geometry value for which the GML should be generated. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Determines whether the two given values are spatially equal. + + true if geometryValue is spatially equal to otherGeometry; otherwise false. + The first geometry value to compare for equality. + The second geometry value to compare for equality. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Determines whether the two given values are spatially disjoint. + + true if geometryValue is disjoint from otherGeometry; otherwise false. + The first geometry value to compare for disjointness. + The second geometry value to compare for disjointness. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Determines whether the two given values spatially intersect. + + true if geometryValue intersects otherGeometry; otherwise false. + The first geometry value to compare for intersection. + The second geometry value to compare for intersection. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Determines whether the two given values spatially touch. + + true if geometryValue touches otherGeometry; otherwise false. + The first geometry value. + The second geometry value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Determines whether the two given values spatially cross. + + true if geometryValue crosses otherGeometry; otherwise false. + The first geometry value. + The second geometry value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Determines whether one value is spatially within the other. + + true if geometryValue is within otherGeometry; otherwise false. + The first geometry value. + The second geometry value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Determines whether one value spatially contains the other. + + true if geometryValue contains otherGeometry; otherwise false. + The first geometry value. + The second geometry value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Determines whether the two given values spatially overlap. + + true if geometryValue overlaps otherGeometry; otherwise false. + The first geometry value. + The second geometry value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Determines whether the two given values are spatially related according to the given Dimensionally Extended Nine-Intersection Model (DE-9IM) intersection pattern. + + true if this geometryValue value relates to otherGeometry according to the specified intersection pattern matrix; otherwise false. + The first geometry value. + The geometry value that should be compared with the first geometry value for relation. + A string that contains the text representation of the (DE-9IM) intersection pattern that defines the relation. + + + , + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Creates a geometry value representing all points less than or equal to distance from the given + + value. + + A new DbGeometry value representing all points less than or equal to distance from geometryValue. + The geometry value. + A double value specifying how far from geometryValue to buffer. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Computes the distance between the closest points in two values. + + A double value that specifies the distance between the two closest points in geometryValue and otherGeometry. + The first geometry value. + The second geometry value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Returns a nullable double value that indicates the convex hull of the given + + value. + + + The convex hull of the given value. + + The geometry value. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Computes the intersection of two values. + + + A new value representing the intersection of geometryValue and otherGeometry. + + The first geometry value. + The second geometry value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Computes the union of two values. + + + A new value representing the union of geometryValue and otherGeometry. + + The first geometry value. + The second geometry value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Computes the difference between two values. + + A new DbGeometry value representing the difference between geometryValue and otherGeometry. + The first geometry value. + The second geometry value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Computes the symmetric difference between two values. + + + A new value representing the symmetric difference between geometryValue and otherGeometry. + + The first geometry value. + The second geometry value. + + + or + + is null. + + + + or + + is not compatible with this spatial services implementation. + + + + + Returns the number of elements in the given value, if it represents a geometry collection. + + The number of elements in geometryValue, if it represents a collection of other geometry values; otherwise null. + The geometry value, which need not represent a geometry collection. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns an element of the given value, if it represents a geometry collection. + + The element in geometryValue at position index, if it represents a collection of other geometry values; otherwise null. + The geometry value, which need not represent a geometry collection. + The position within the geometry value from which the element should be taken. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the X coordinate of the given value, if it represents a point. + + + The X coordinate of the given value. + + The geometry value, which need not represent a point. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the Y coordinate of the given value, if it represents a point. + + + The Y coordinate of the given value. + + The geometry value, which need not represent a point. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the elevation (Z) of the given value, if it represents a point. + + The elevation (Z) of geometryValue, if it represents a point; otherwise null. + The geometry value, which need not represent a point. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the M (Measure) coordinate of the given value, if it represents a point. + + + The M (Measure) coordinate of the given value. + + The geometry value, which need not represent a point. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable double value that indicates the length of the given + + value, which may be null if the value does not represent a curve. + + + The length of the given value. + + The geometry value, which need not represent a curve. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a value that represents the start point of the given DbGeometry value, which may be null if the value does not represent a curve. + + + The start point of the given value. + + The geometry value, which need not represent a curve. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a value that represents the end point of the given DbGeometry value, which may be null if the value does not represent a curve. + + The end point of geometryValue, if it represents a curve; otherwise null. + The geometry value, which need not represent a curve. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable Boolean value that whether the given value is closed, which may be null if the value does not represent a curve. + + + True if the given value is closed; otherwise, false. + + The geometry value, which need not represent a curve. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable Boolean value that whether the given value is a ring, which may be null if the value does not represent a curve. + + + True if the given value is a ring; otherwise, false. + + The geometry value, which need not represent a curve. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the number of points in the given value, if it represents a linestring or linear ring. + + + The number of points in the given value. + + The geometry value, which need not represent a linestring or linear ring. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a point element of the given value, if it represents a linestring or linear ring. + + The point in geometryValue at position index, if it represents a linestring or linear ring; otherwise null. + The geometry value, which need not represent a linestring or linear ring. + The position within the geometry value from which the element should be taken. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a nullable double value that indicates the area of the given + + value, which may be null if the value does not represent a surface. + + + A nullable double value that indicates the area of the given value. + + The geometry value, which need not represent a surface. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a value that represents the centroid of the given DbGeometry value, which may be null if the value does not represent a surface. + + The centroid of geometryValue, if it represents a surface; otherwise null. + The geometry value, which need not represent a surface. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a value that represents a point on the surface of the given DbGeometry value, which may be null if the value does not represent a surface. + + + A value that represents a point on the surface of the given DbGeometry value. + + The geometry value, which need not represent a surface. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns a value that represents the exterior ring of the given DbGeometry value, which may be null if the value does not represent a polygon. + + A DbGeometry value representing the exterior ring on geometryValue, if it represents a polygon; otherwise null. + The geometry value, which need not represent a polygon. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns the number of interior rings in the given value, if it represents a polygon. + + The number of elements in geometryValue, if it represents a polygon; otherwise null. + The geometry value, which need not represent a polygon. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Returns an interior ring from the given value, if it represents a polygon. + + The interior ring in geometryValue at position index, if it represents a polygon; otherwise null. + The geometry value, which need not represent a polygon. + The position within the geometry value from which the element should be taken. + + + is null. + + + + is not compatible with this spatial services implementation. + + + + + Gets the default services for the . + + The default services. + + + + Override this property to allow the spatial provider to fail fast when native types or other + resources needed for the spatial provider to function correctly are not available. + The default value is true which means that EF will continue with the assumption + that the provider has the necessary types/resources rather than failing fast. + + + + + The same as but works in partial trust and adds explicit caching of + generated indentation string and also recognizes writing a string that contains just \r\n or \n as a write-line to ensure + we indent the next line properly. + + + + + Specifies the default tab string. This field is constant. + + + + + Specifies the culture what will be used by the underlying TextWriter. This static property is read-only. + Note that any writer passed to one of the constructors of must use this + same culture. The culture is . + + + + + Initializes a new instance of the IndentedTextWriter class using the specified text writer and default tab string. + Note that the writer passed to this constructor must use the specified by the + property. + + + The to use for output. + + + + + Initializes a new instance of the IndentedTextWriter class using the specified text writer and tab string. + Note that the writer passed to this constructor must use the specified by the + property. + + + The to use for output. + + The tab string to use for indentation. + + + + Closes the document being written to. + + + + + Flushes the stream. + + + + + Outputs the tab string once for each level of indentation according to the + + property. + + + + + Builds a string representing the current indentation level for a new line. + + + Does NOT check if tabs are currently pending, just returns a string that would be + useful in replacing embedded newline characters. + + An empty string, or a string that contains .Indent level's worth of specified tab-string. + + + + Writes the specified string to the text stream. + + The string to write. + + + + Writes the text representation of a Boolean value to the text stream. + + The Boolean value to write. + + + + Writes a character to the text stream. + + The character to write. + + + + Writes a character array to the text stream. + + The character array to write. + + + + Writes a subarray of characters to the text stream. + + The character array to write data from. + Starting index in the buffer. + The number of characters to write. + + + + Writes the text representation of a Double to the text stream. + + The double to write. + + + + Writes the text representation of a Single to the text stream. + + The single to write. + + + + Writes the text representation of an integer to the text stream. + + The integer to write. + + + + Writes the text representation of an 8-byte integer to the text stream. + + The 8-byte integer to write. + + + + Writes the text representation of an object to the text stream. + + The object to write. + + + + Writes out a formatted string, using the same semantics as specified. + + The formatting string. + The object to write into the formatted string. + + + + Writes out a formatted string, using the same semantics as specified. + + The formatting string to use. + The first object to write into the formatted string. + The second object to write into the formatted string. + + + + Writes out a formatted string, using the same semantics as specified. + + The formatting string to use. + The argument array to output. + + + + Writes the specified string to a line without tabs. + + The string to write. + + + + Writes the specified string, followed by a line terminator, to the text stream. + + The string to write. + + + + Writes a line terminator. + + + + + Writes the text representation of a Boolean, followed by a line terminator, to the text stream. + + The Boolean to write. + + + + Writes a character, followed by a line terminator, to the text stream. + + The character to write. + + + + Writes a character array, followed by a line terminator, to the text stream. + + The character array to write. + + + + Writes a subarray of characters, followed by a line terminator, to the text stream. + + The character array to write data from. + Starting index in the buffer. + The number of characters to write. + + + + Writes the text representation of a Double, followed by a line terminator, to the text stream. + + The double to write. + + + + Writes the text representation of a Single, followed by a line terminator, to the text stream. + + The single to write. + + + + Writes the text representation of an integer, followed by a line terminator, to the text stream. + + The integer to write. + + + + Writes the text representation of an 8-byte integer, followed by a line terminator, to the text stream. + + The 8-byte integer to write. + + + + Writes the text representation of an object, followed by a line terminator, to the text stream. + + The object to write. + + + + Writes out a formatted string, followed by a line terminator, using the same semantics as specified. + + The formatting string. + The object to write into the formatted string. + + + + Writes out a formatted string, followed by a line terminator, using the same semantics as specified. + + The formatting string to use. + The first object to write into the formatted string. + The second object to write into the formatted string. + + + + Writes out a formatted string, followed by a line terminator, using the same semantics as specified. + + The formatting string to use. + The argument array to output. + + + + Writes the text representation of a UInt32, followed by a line terminator, to the text stream. + + A UInt32 to output. + + + + Gets the encoding for the text writer to use. + + + An that indicates the encoding for the text writer to use. + + + + + Gets or sets the new line character to use. + + The new line character to use. + + + + Gets or sets the number of spaces to indent. + + The number of spaces to indent. + + + + Gets the to use. + + + The to use. + + + + + Convention to apply column ordering specified via + + or the API. This convention throws if a duplicate configured column order + is detected. + + + + + Convention to apply column ordering specified via + + or the API. + + + + + + + + Validates the ordering configuration supplied for columns. + This base implementation is a no-op. + + The name of the table that the columns belong to. + The definition of the table. + + + + Validates the ordering configuration supplied for columns to ensure + that the same ordinal was not supplied for two columns. + + The name of the table that the columns belong to. + The definition of the table. + + + + Represents a conceptual or store model. This class can be used to access information about the shape of the model + and the way the that it has been configured. + + + + + Adds an association type to the model. + + The AssociationType instance to be added. + + + + Adds a complex type to the model. + + The ComplexType instance to be added. + + + + Adds an entity type to the model. + + The EntityType instance to be added. + + + + Adds an enumeration type to the model. + + The EnumType instance to be added. + + + + Adds a function to the model. + + The EdmFunction instance to be added. + + + + Removes an association type from the model. + + The AssociationType instance to be removed. + + + + Removes a complex type from the model. + + The ComplexType instance to be removed. + + + + Removes an entity type from the model. + + The EntityType instance to be removed. + + + + Removes an enumeration type from the model. + + The EnumType instance to be removed. + + + + Removes a function from the model. + + The EdmFunction instance to be removed. + + + Gets the built-in type kind for this type. + + A object that represents the built-in type kind for this type. + + + + + Gets the data space associated with the model, which indicates whether + it is a conceptual model (DataSpace.CSpace) or a store model (DataSpace.SSpace). + + + + + Gets the association types in the model. + + + + + Gets the complex types in the model. + + + + + Gets the entity types in the model. + + + + + Gets the enum types in the model. + + + + + Gets the functions in the model. + + + + + Gets the container that stores entity and association sets, and function imports. + + + + Gets the global items associated with the model. + The global items associated with the model. + + + + An implementation of IDatabaseInitializer that will recreate and optionally re-seed the + database only if the database does not exist. + To seed the database, create a derived class and override the Seed method. + + The type of the context. + + + Initializes a new instance of the class. + + + + Executes the strategy to initialize the database for the given context. + + The context. + + + + A method that should be overridden to actually add data to the context for seeding. + The default implementation does nothing. + + The context to seed. + + + + An instance of this class is obtained from an object and can be used + to manage the actual database backing a DbContext or connection. + This includes creating, deleting, and checking for the existence of a database. + Note that deletion and checking for existence of a database can be performed using just a + connection (i.e. without a full context) by using the static methods of this class. + + + + + Enables the user to pass in a database transaction created outside of the object + if you want the Entity Framework to execute commands within that external transaction. + Alternatively, pass in null to clear the framework's knowledge of that transaction. + + the external transaction + Thrown if the transaction is already completed + + Thrown if the connection associated with the object is already enlisted in a + + transaction + + + Thrown if the connection associated with the object is already participating in a transaction + + Thrown if the connection associated with the transaction does not match the Entity Framework's connection + + + + Begins a transaction on the underlying store connection + + + a object wrapping access to the underlying store's transaction object + + + + + Begins a transaction on the underlying store connection using the specified isolation level + + The database isolation level with which the underlying store transaction will be created + + a object wrapping access to the underlying store's transaction object + + + + + Sets the database initializer to use for the given context type. The database initializer is called when a + the given type is used to access a database for the first time. + The default strategy for Code First contexts is an instance of . + + The type of the context. + The initializer to use, or null to disable initialization for the given context type. + + + + Runs the the registered on this context. + If "force" is set to true, then the initializer is run regardless of whether or not it + has been run before. This can be useful if a database is deleted while an app is running + and needs to be reinitialized. + If "force" is set to false, then the initializer is only run if it has not already been + run for this context, model, and connection in this app domain. This method is typically + used when it is necessary to ensure that the database has been created and seeded + before starting some operation where doing so lazily will cause issues, such as when the + operation is part of a transaction. + + + If set to true the initializer is run even if it has already been run. + + + + + Checks whether or not the database is compatible with the the current Code First model. + + + Model compatibility currently uses the following rules. + If the context was created using either the Model First or Database First approach then the + model is assumed to be compatible with the database and this method returns true. + For Code First the model is considered compatible if the model is stored in the database + in the Migrations history table and that model has no differences from the current model as + determined by Migrations model differ. + If the model is not stored in the database but an EF 4.1/4.2 model hash is found instead, + then this is used to check for compatibility. + + + If set to true then an exception will be thrown if no model metadata is found in the database. If set to false then this method will return true if metadata is not found. + + True if the model hash in the context and the database match; false otherwise. + + + + Creates a new database on the database server for the model defined in the backing context. + Note that calling this method before the database initialization strategy has run will disable + executing that strategy. + + + + + Creates a new database on the database server for the model defined in the backing context, but only + if a database with the same name does not already exist on the server. + + True if the database did not exist and was created; false otherwise. + + + + Checks whether or not the database exists on the server. + + True if the database exists; false otherwise. + + + + Deletes the database on the database server if it exists, otherwise does nothing. + Calling this method from outside of an initializer will mark the database as having + not been initialized. This means that if an attempt is made to use the database again + after it has been deleted, then any initializer set will run again and, usually, will + try to create the database again automatically. + + True if the database did exist and was deleted; false otherwise. + + + + Checks whether or not the database exists on the server. + The connection to the database is created using the given database name or connection string + in the same way as is described in the documentation for the class. + + The database name or a connection string to the database. + True if the database exists; false otherwise. + + + + Deletes the database on the database server if it exists, otherwise does nothing. + The connection to the database is created using the given database name or connection string + in the same way as is described in the documentation for the class. + + The database name or a connection string to the database. + True if the database did exist and was deleted; false otherwise. + + + + Checks whether or not the database exists on the server. + + An existing connection to the database. + True if the database exists; false otherwise. + + + + Deletes the database on the database server if it exists, otherwise does nothing. + + An existing connection to the database. + True if the database did exist and was deleted; false otherwise. + + + + Creates a raw SQL query that will return elements of the given generic type. + The type can be any type that has properties that match the names of the columns returned + from the query, or can be a simple primitive type. The type does not have to be an + entity type. The results of this query are never tracked by the context even if the + type of object returned is an entity type. Use the + method to return entities that are tracked by the context. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.Database.SqlQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.Database.SqlQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + The type of object returned by the query. + The SQL query string. + + The parameters to apply to the SQL query string. If output parameters are used, their values will + not be available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + A object that will execute the query when it is enumerated. + + + + + Creates a raw SQL query that will return elements of the given type. + The type can be any type that has properties that match the names of the columns returned + from the query, or can be a simple primitive type. The type does not have to be an + entity type. The results of this query are never tracked by the context even if the + type of object returned is an entity type. Use the + method to return entities that are tracked by the context. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.Database.SqlQuery(typeof(Post), "SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + The type of object returned by the query. + The SQL query string. + + The parameters to apply to the SQL query string. If output parameters are used, their values + will not be available until the results have been read completely. This is due to the underlying + behavior of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + A object that will execute the query when it is enumerated. + + + + + Executes the given DDL/DML command against the database. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + If there isn't an existing local or ambient transaction a new transaction will be used + to execute the command. + + The command string. + The parameters to apply to the command string. + The result returned by the database after executing the command. + + + + Executes the given DDL/DML command against the database. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + Controls the creation of a transaction for this command. + The command string. + The parameters to apply to the command string. + The result returned by the database after executing the command. + + + + Asynchronously executes the given DDL/DML command against the database. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + If there isn't an existing local transaction a new transaction will be used + to execute the command. + + The command string. + The parameters to apply to the command string. + + A task that represents the asynchronous operation. + The task result contains the result returned by the database after executing the command. + + + + + Asynchronously executes the given DDL/DML command against the database. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + Controls the creation of a transaction for this command. + The command string. + The parameters to apply to the command string. + + A task that represents the asynchronous operation. + The task result contains the result returned by the database after executing the command. + + + + + Asynchronously executes the given DDL/DML command against the database. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + If there isn't an existing local transaction a new transaction will be used + to execute the command. + + The command string. + + A to observe while waiting for the task to complete. + + The parameters to apply to the command string. + + A task that represents the asynchronous operation. + The task result contains the result returned by the database after executing the command. + + + + + Asynchronously executes the given DDL/DML command against the database. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + Controls the creation of a transaction for this command. + The command string. + + A to observe while waiting for the task to complete. + + The parameters to apply to the command string. + + A task that represents the asynchronous operation. + The task result contains the result returned by the database after executing the command. + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Gets the transaction the underlying store connection is enlisted in. May be null. + + + + + Returns the connection being used by this context. This may cause the + connection to be created if it does not already exist. + + Thrown if the context has been disposed. + + + + The connection factory to use when creating a from just + a database name or a connection string. + + + This is used when just a database name or connection string is given to or when + the no database name or connection is given to DbContext in which case the name of + the context class is passed to this factory in order to generate a DbConnection. + By default, the instance to use is read from the application's .config + file from the "EntityFramework DefaultConnectionFactory" entry in appSettings. If no entry is found in + the config file then is used. Setting this property in code + always overrides whatever value is found in the config file. + + + + + Gets or sets the timeout value, in seconds, for all context operations. + The default value is null, where null indicates that the default value of the underlying + provider will be used. + + + The timeout, in seconds, or null to use the provider default. + + + + + Set this property to log the SQL generated by the to the given + delegate. For example, to log to the console, set this property to . + + + The format of the log text can be changed by creating a new formatter that derives from + and setting it with . + For more low-level control over logging/interception see and + . + + + + + DbModelBuilder is used to map CLR classes to a database schema. + This code centric approach to building an Entity Data Model (EDM) model is known as 'Code First'. + + + DbModelBuilder is typically used to configure a model by overriding + DbContext.OnModelCreating(DbModelBuilder) + . + You can also use DbModelBuilder independently of DbContext to build a model and then construct a + or . + The recommended approach, however, is to use OnModelCreating in as + the workflow is more intuitive and takes care of common tasks, such as caching the created model. + Types that form your model are registered with DbModelBuilder and optional configuration can be + performed by applying data annotations to your classes and/or using the fluent style DbModelBuilder + API. + When the Build method is called a set of conventions are run to discover the initial model. + These conventions will automatically discover aspects of the model, such as primary keys, and + will also process any data annotations that were specified on your classes. Finally + any configuration that was performed using the DbModelBuilder API is applied. + Configuration done via the DbModelBuilder API takes precedence over data annotations which + in turn take precedence over the default conventions. + + + + + Initializes a new instance of the class. + The process of discovering the initial model will use the set of conventions included + in the most recent version of the Entity Framework installed on your machine. + + + Upgrading to newer versions of the Entity Framework may cause breaking changes + in your application because new conventions may cause the initial model to be + configured differently. There is an alternate constructor that allows a specific + version of conventions to be specified. + + + + + Initializes a new instance of the class that will use + a specific set of conventions to discover the initial model. + + The version of conventions to be used. + + + + Excludes a type from the model. This is used to remove types from the model that were added + by convention during initial model discovery. + + The type to be excluded. + The same DbModelBuilder instance so that multiple calls can be chained. + + + + Configures the default database schema name. This default database schema name is used + for database objects that do not have an explicitly configured schema name. + + The name of the default database schema. + The same DbModelBuilder instance so that multiple calls can be chained. + + + + Excludes the specified type(s) from the model. This is used to remove types from the model that were added + by convention during initial model discovery. + + The types to be excluded from the model. + The same DbModelBuilder instance so that multiple calls can be chained. + + + + Registers an entity type as part of the model and returns an object that can be used to + configure the entity. This method can be called multiple times for the same entity to + perform multiple lines of configuration. + + The type to be registered or configured. + The configuration object for the specified entity type. + + + + Registers an entity type as part of the model. + + The type to be registered. + + This method is provided as a convenience to allow entity types to be registered dynamically + without the need to use MakeGenericMethod in order to call the normal generic Entity method. + This method does not allow further configuration of the entity type using the fluent APIs since + these APIs make extensive use of generic type parameters. + + + + + Registers a type as a complex type in the model and returns an object that can be used to + configure the complex type. This method can be called multiple times for the same type to + perform multiple lines of configuration. + + The type to be registered or configured. + The configuration object for the specified complex type. + + + + Begins configuration of a lightweight convention that applies to all entities and complex types in + the model. + + A configuration object for the convention. + + + + Begins configuration of a lightweight convention that applies to all entities and complex types + in the model that inherit from or implement the type specified by the generic argument. + This method does not register types as part of the model. + + The type of the entities or complex types that this convention will apply to. + A configuration object for the convention. + + + + Begins configuration of a lightweight convention that applies to all properties + in the model. + + A configuration object for the convention. + + + + Begins configuration of a lightweight convention that applies to all primitive + properties of the specified type in the model. + + The type of the properties that the convention will apply to. + A configuration object for the convention. + + The convention will apply to both nullable and non-nullable properties of the + specified type. + + + + + Creates a based on the configuration performed using this builder. + The connection is used to determine the database provider being used as this + affects the database layer of the generated model. + + Connection to use to determine provider information. + The model that was built. + + + + Creates a based on the configuration performed using this builder. + Provider information must be specified because this affects the database layer of the generated model. + For SqlClient the invariant name is 'System.Data.SqlClient' and the manifest token is the version year (i.e. '2005', '2008' etc.) + + The database provider that the model will be used with. + The model that was built. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Provides access to the settings of this DbModelBuilder that deal with conventions. + + + + + Gets the for this DbModelBuilder. + The registrar allows derived entity and complex type configurations to be registered with this builder. + + + + + A value from this enumeration can be provided directly to the + class or can be used in the applied to + a class derived from . The value used defines which version of + the DbContext and DbModelBuilder conventions should be used when building a model from + code--also known as "Code First". + + + Using DbModelBuilderVersion.Latest ensures that all the latest functionality is available + when upgrading to a new release of the Entity Framework. However, it may result in an + application behaving differently with the new release than it did with a previous release. + This can be avoided by using a specific version of the conventions, but if a version + other than the latest is set then not all the latest functionality will be available. + + + + + Indicates that the latest version of the and + conventions should be used. + + + + + Indicates that the version of the and + conventions shipped with Entity Framework v4.1 + should be used. + + + + + Indicates that the version of the and + conventions shipped with Entity Framework v5.0 + when targeting .Net Framework 4 should be used. + + + + + Indicates that the version of the and + conventions shipped with Entity Framework v5.0 + should be used. + + + + + Indicates that the version of the and + conventions shipped with Entity Framework v6.0 + should be used. + + + + + This attribute can be applied to a class derived from to set which + version of the DbContext and conventions should be used when building + a model from code--also known as "Code First". See the + enumeration for details about DbModelBuilder versions. + + + If the attribute is missing from DbContextthen DbContext will always use the latest + version of the conventions. This is equivalent to using DbModelBuilderVersion.Latest. + + + + + Initializes a new instance of the class. + + + The conventions version to use. + + + + + Gets the conventions version. + + + The conventions version. + + + + + A non-generic version of which can be used when the type of entity + is not known at build time. + + + + + Represents a non-generic LINQ to Entities query against a DbContext. + + + + + Throws an exception indicating that binding directly to a store query is not supported. + Instead populate a DbSet with data, for example by using the Load extension method, and + then bind to local data. For WPF bind to DbSet.Local. For Windows Forms bind to + DbSet.Local.ToBindingList(). + + Never returns; always throws. + + + + Returns an which when enumerated will execute the query against the database. + + The query results. + + + + Returns an which when enumerated will execute the query against the database. + + The query results. + + + + Specifies the related objects to include in the query results. + + + Paths are all-inclusive. For example, if an include call indicates Include("Orders.OrderLines"), not only will + OrderLines be included, but also Orders. When you call the Include method, the query path is only valid on + the returned instance of the DbQuery<T>. Other instances of DbQuery<T> and the object context itself are not affected. + Because the Include method returns the query object, you can call this method multiple times on an DbQuery<T> to + specify multiple paths for the query. + + The dot-separated list of related objects to return in the query results. + + A new DbQuery<T> with the defined query path. + + + + + Returns a new query where the entities returned will not be cached in the . + + A new query with NoTracking applied. + + + + Returns a new query that will stream the results instead of buffering. + + A new query with AsStreaming applied. + + + + Returns the equivalent generic object. + + The type of element for which the query was created. + The generic set object. + + + + Returns a representation of the underlying query. + + The query string. + + + + + + + + + + + + + Returns false. + + + false . + + + + + The IQueryable element type. + + + + + The IQueryable LINQ Expression. + + + + + The IQueryable provider. + + + + + Creates an instance of a when called from the constructor of a derived + type that will be used as a test double for DbSets. Methods and properties that will be used by the + test double must be implemented by the test double except AsNoTracking, AsStreaming, an Include where + the default implementation is a no-op. + + + + + Finds an entity with the given primary key values. + If an entity with the given primary key values exists in the context, then it is + returned immediately without making a request to the store. Otherwise, a request + is made to the store for an entity with the given primary key values and this entity, + if found, is attached to the context and returned. If no entity is found in the + context or the store, then null is returned. + + + The ordering of composite key values is as defined in the EDM, which is in turn as defined in + the designer, by the Code First fluent API, or by the DataMember attribute. + + The values of the primary key for the entity to be found. + The entity found, or null. + Thrown if multiple entities exist in the context with the primary key values given. + Thrown if the type of entity is not part of the data model for this context. + Thrown if the types of the key values do not match the types of the key values for the entity type to be found. + Thrown if the context has been disposed. + + + + Asynchronously finds an entity with the given primary key values. + If an entity with the given primary key values exists in the context, then it is + returned immediately without making a request to the store. Otherwise, a request + is made to the store for an entity with the given primary key values and this entity, + if found, is attached to the context and returned. If no entity is found in the + context or the store, then null is returned. + + + The ordering of composite key values is as defined in the EDM, which is in turn as defined in + the designer, by the Code First fluent API, or by the DataMember attribute. + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The values of the primary key for the entity to be found. + A task that represents the asynchronous find operation. The task result contains the entity found, or null. + Thrown if multiple entities exist in the context with the primary key values given. + Thrown if the type of entity is not part of the data model for this context. + Thrown if the types of the key values do not match the types of the key values for the entity type to be found. + Thrown if the context has been disposed. + + + + Asynchronously finds an entity with the given primary key values. + If an entity with the given primary key values exists in the context, then it is + returned immediately without making a request to the store. Otherwise, a request + is made to the store for an entity with the given primary key values and this entity, + if found, is attached to the context and returned. If no entity is found in the + context or the store, then null is returned. + + + The ordering of composite key values is as defined in the EDM, which is in turn as defined in + the designer, by the Code First fluent API, or by the DataMember attribute. + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + The values of the primary key for the entity to be found. + A task that represents the asynchronous find operation. The task result contains the entity found, or null. + Thrown if multiple entities exist in the context with the primary key values given. + Thrown if the type of entity is not part of the data model for this context. + Thrown if the types of the key values do not match the types of the key values for the entity type to be found. + Thrown if the context has been disposed. + + + + Attaches the given entity to the context underlying the set. That is, the entity is placed + into the context in the Unchanged state, just as if it had been read from the database. + + The entity to attach. + The entity. + + Attach is used to repopulate a context with an entity that is known to already exist in the database. + SaveChanges will therefore not attempt to insert an attached entity into the database because + it is assumed to already be there. + Note that entities that are already in the context in some other state will have their state set + to Unchanged. Attach is a no-op if the entity is already in the context in the Unchanged state. + + + + + Adds the given entity to the context underlying the set in the Added state such that it will + be inserted into the database when SaveChanges is called. + + The entity to add. + The entity. + + Note that entities that are already in the context in some other state will have their state set + to Added. Add is a no-op if the entity is already in the context in the Added state. + + + + + Adds the given collection of entities into context underlying the set with each entity being put into + the Added state such that it will be inserted into the database when SaveChanges is called. + + The collection of entities to add. + + The collection of entities. + + + Note that if is set to true (which is + the default), then DetectChanges will be called once before adding any entities and will not be called + again. This means that in some situations AddRange may perform significantly better than calling + Add multiple times would do. + Note that entities that are already in the context in some other state will have their state set to + Added. AddRange is a no-op for entities that are already in the context in the Added state. + + + + + Marks the given entity as Deleted such that it will be deleted from the database when SaveChanges + is called. Note that the entity must exist in the context in some other state before this method + is called. + + The entity to remove. + The entity. + + Note that if the entity exists in the context in the Added state, then this method + will cause it to be detached from the context. This is because an Added entity is assumed not to + exist in the database such that trying to delete it does not make sense. + + + + + Removes the given collection of entities from the context underlying the set with each entity being put into + the Deleted state such that it will be deleted from the database when SaveChanges is called. + + The collection of entities to delete. + + The collection of entities. + + + Note that if is set to true (which is + the default), then DetectChanges will be called once before delete any entities and will not be called + again. This means that in some situations RemoveRange may perform significantly better than calling + Remove multiple times would do. + Note that if any entity exists in the context in the Added state, then this method + will cause it to be detached from the context. This is because an Added entity is assumed not to + exist in the database such that trying to delete it does not make sense. + + + + + Creates a new instance of an entity for the type of this set. + Note that this instance is NOT added or attached to the set. + The instance returned will be a proxy if the underlying context is configured to create + proxies and the entity type meets the requirements for creating a proxy. + + The entity instance, which may be a proxy. + + + + Creates a new instance of an entity for the type of this set or for a type derived + from the type of this set. + Note that this instance is NOT added or attached to the set. + The instance returned will be a proxy if the underlying context is configured to create + proxies and the entity type meets the requirements for creating a proxy. + + The type of entity to create. + The entity instance, which may be a proxy. + + + + Returns the equivalent generic object. + + The type of entity for which the set was created. + The generic set object. + + + + Creates a raw SQL query that will return entities in this set. By default, the + entities returned are tracked by the context; this can be changed by calling + AsNoTracking on the returned. + Note that the entities returned are always of the type for this set and never of + a derived type. If the table or tables queried may contain data for other entity + types, then the SQL query must be written appropriately to ensure that only entities of + the correct type are returned. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.Set(typeof(Blog)).SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.Set(typeof(Blog)).SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + The SQL query string. + + The parameters to apply to the SQL query string. If output parameters are used, their values + will not be available until the results have been read completely. This is due to the underlying + behavior of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + A object that will execute the query when it is enumerated. + + + + + + + + + + + + + + Gets an that represents a local view of all Added, Unchanged, + and Modified entities in this set. This local view will stay in sync as entities are added or + removed from the context. Likewise, entities added to or removed from the local view will automatically + be added to or removed from the context. + + + This property can be used for data binding by populating the set with data, for example by using the Load + extension method, and then binding to the local data through this property. For WPF bind to this property + directly. For Windows Forms bind to the result of calling ToBindingList on this property + + The local view. + + + + A DbSet represents the collection of all entities in the context, or that can be queried from the + database, of a given type. DbSet objects are created from a DbContext using the DbContext.Set method. + + + Note that DbSet does not support MEST (Multiple Entity Sets per Type) meaning that there is always a + one-to-one correlation between a type and a set. + + The type that defines the set. + + + + Represents a LINQ to Entities query against a DbContext. + + The type of entity to query for. + + + + Specifies the related objects to include in the query results. + + + Paths are all-inclusive. For example, if an include call indicates Include("Orders.OrderLines"), not only will + OrderLines be included, but also Orders. When you call the Include method, the query path is only valid on + the returned instance of the DbQuery<T>. Other instances of DbQuery<T> and the object context itself are not affected. + Because the Include method returns the query object, you can call this method multiple times on an DbQuery<T> to + specify multiple paths for the query. + + The dot-separated list of related objects to return in the query results. + + A new with the defined query path. + + + + + Returns a new query where the entities returned will not be cached in the . + + A new query with NoTracking applied. + + + + Returns a new query that will stream the results instead of buffering. + + A new query with AsStreaming applied. + + + + Throws an exception indicating that binding directly to a store query is not supported. + Instead populate a DbSet with data, for example by using the Load extension method, and + then bind to local data. For WPF bind to DbSet.Local. For Windows Forms bind to + DbSet.Local.ToBindingList(). + + Never returns; always throws. + + + + Returns an which when enumerated will execute the query against the database. + + The query results. + + + + Returns an which when enumerated will execute the query against the database. + + The query results. + + + + Returns an which when enumerated will execute the query against the database. + + The query results. + + + + Returns an which when enumerated will execute the query against the database. + + The query results. + + + + Returns a representation of the underlying query. + + The query string. + + + + Returns a new instance of the non-generic class for this query. + + The query. + A non-generic version. + + + + + + + + + + + + + Returns false. + + + false . + + + + + The IQueryable element type. + + + + + The IQueryable LINQ Expression. + + + + + The IQueryable provider. + + + + + An represents the collection of all entities in the context, or that + can be queried from the database, of a given type. is a concrete + implementation of IDbSet. + + + was originally intended to allow creation of test doubles (mocks or + fakes) for . However, this approach has issues in that adding new members + to an interface breaks existing code that already implements the interface without the new members. + Therefore, starting with EF6, no new members will be added to this interface and it is recommended + that be used as the base class for test doubles. + + The type that defines the set. + + + + Finds an entity with the given primary key values. + If an entity with the given primary key values exists in the context, then it is + returned immediately without making a request to the store. Otherwise, a request + is made to the store for an entity with the given primary key values and this entity, + if found, is attached to the context and returned. If no entity is found in the + context or the store, then null is returned. + + + The ordering of composite key values is as defined in the EDM, which is in turn as defined in + the designer, by the Code First fluent API, or by the DataMember attribute. + + The values of the primary key for the entity to be found. + The entity found, or null. + + + + Adds the given entity to the context underlying the set in the Added state such that it will + be inserted into the database when SaveChanges is called. + + The entity to add. + The entity. + + Note that entities that are already in the context in some other state will have their state set + to Added. Add is a no-op if the entity is already in the context in the Added state. + + + + + Marks the given entity as Deleted such that it will be deleted from the database when SaveChanges + is called. Note that the entity must exist in the context in some other state before this method + is called. + + The entity to remove. + The entity. + + Note that if the entity exists in the context in the Added state, then this method + will cause it to be detached from the context. This is because an Added entity is assumed not to + exist in the database such that trying to delete it does not make sense. + + + + + Attaches the given entity to the context underlying the set. That is, the entity is placed + into the context in the Unchanged state, just as if it had been read from the database. + + The entity to attach. + The entity. + + Attach is used to repopulate a context with an entity that is known to already exist in the database. + SaveChanges will therefore not attempt to insert an attached entity into the database because + it is assumed to already be there. + Note that entities that are already in the context in some other state will have their state set + to Unchanged. Attach is a no-op if the entity is already in the context in the Unchanged state. + + + + + Creates a new instance of an entity for the type of this set. + Note that this instance is NOT added or attached to the set. + The instance returned will be a proxy if the underlying context is configured to create + proxies and the entity type meets the requirements for creating a proxy. + + The entity instance, which may be a proxy. + + + + Creates a new instance of an entity for the type of this set or for a type derived + from the type of this set. + Note that this instance is NOT added or attached to the set. + The instance returned will be a proxy if the underlying context is configured to create + proxies and the entity type meets the requirements for creating a proxy. + + The type of entity to create. + The entity instance, which may be a proxy. + + + + Gets an that represents a local view of all Added, Unchanged, + and Modified entities in this set. This local view will stay in sync as entities are added or + removed from the context. Likewise, entities added to or removed from the local view will automatically + be added to or removed from the context. + + + This property can be used for data binding by populating the set with data, for example by using the Load + extension method, and then binding to the local data through this property. For WPF bind to this property + directly. For Windows Forms bind to the result of calling ToBindingList on this property + + The local view. + + + + Creates an instance of a when called from the constructor of a derived + type that will be used as a test double for DbSets. Methods and properties that will be used by the + test double must be implemented by the test double except AsNoTracking, AsStreaming, an Include where + the default implementation is a no-op. + + + + + Finds an entity with the given primary key values. + If an entity with the given primary key values exists in the context, then it is + returned immediately without making a request to the store. Otherwise, a request + is made to the store for an entity with the given primary key values and this entity, + if found, is attached to the context and returned. If no entity is found in the + context or the store, then null is returned. + + + The ordering of composite key values is as defined in the EDM, which is in turn as defined in + the designer, by the Code First fluent API, or by the DataMember attribute. + + The values of the primary key for the entity to be found. + The entity found, or null. + Thrown if multiple entities exist in the context with the primary key values given. + Thrown if the type of entity is not part of the data model for this context. + Thrown if the types of the key values do not match the types of the key values for the entity type to be found. + Thrown if the context has been disposed. + + + + Asynchronously finds an entity with the given primary key values. + If an entity with the given primary key values exists in the context, then it is + returned immediately without making a request to the store. Otherwise, a request + is made to the store for an entity with the given primary key values and this entity, + if found, is attached to the context and returned. If no entity is found in the + context or the store, then null is returned. + + + The ordering of composite key values is as defined in the EDM, which is in turn as defined in + the designer, by the Code First fluent API, or by the DataMember attribute. + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + The values of the primary key for the entity to be found. + A task that represents the asynchronous find operation. The task result contains the entity found, or null. + Thrown if multiple entities exist in the context with the primary key values given. + Thrown if the type of entity is not part of the data model for this context. + Thrown if the types of the key values do not match the types of the key values for the entity type to be found. + Thrown if the context has been disposed. + + + + Asynchronously finds an entity with the given primary key values. + If an entity with the given primary key values exists in the context, then it is + returned immediately without making a request to the store. Otherwise, a request + is made to the store for an entity with the given primary key values and this entity, + if found, is attached to the context and returned. If no entity is found in the + context or the store, then null is returned. + + + The ordering of composite key values is as defined in the EDM, which is in turn as defined in + the designer, by the Code First fluent API, or by the DataMember attribute. + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + The values of the primary key for the entity to be found. + A task that represents the asynchronous find operation. The task result contains the entity found, or null. + + + + + + + + + + Adds the given collection of entities into context underlying the set with each entity being put into + the Added state such that it will be inserted into the database when SaveChanges is called. + + The collection of entities to add. + + The collection of entities. + + + Note that if is set to true (which is + the default), then DetectChanges will be called once before adding any entities and will not be called + again. This means that in some situations AddRange may perform significantly better than calling + Add multiple times would do. + Note that entities that are already in the context in some other state will have their state set to + Added. AddRange is a no-op for entities that are already in the context in the Added state. + + + + + + + + Removes the given collection of entities from the context underlying the set with each entity being put into + the Deleted state such that it will be deleted from the database when SaveChanges is called. + + The collection of entities to delete. + + The collection of entities. + + + Note that if is set to true (which is + the default), then DetectChanges will be called once before delete any entities and will not be called + again. This means that in some situations RemoveRange may perform significantly better than calling + Remove multiple times would do. + Note that if any entity exists in the context in the Added state, then this method + will cause it to be detached from the context. This is because an Added entity is assumed not to + exist in the database such that trying to delete it does not make sense. + + + + + + + + + + + Returns the equivalent non-generic object. + + The generic set object. + The non-generic set object. + + + + Creates a raw SQL query that will return entities in this set. By default, the + entities returned are tracked by the context; this can be changed by calling + AsNoTracking on the returned. + Note that the entities returned are always of the type for this set and never of + a derived type. If the table or tables queried may contain data for other entity + types, then the SQL query must be written appropriately to ensure that only entities of + the correct type are returned. + + As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. + context.Blogs.SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); + Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. + context.Blogs.SqlQuery("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)); + + The SQL query string. + + The parameters to apply to the SQL query string. If output parameters are used, their values will + not be available until the results have been read completely. This is due to the underlying behavior + of DbDataReader, see http://go.microsoft.com/fwlink/?LinkID=398589 for more details. + + + A object that will execute the query when it is enumerated. + + + + + + + + + + + + + + + + + An implementation of IDatabaseInitializer that will always recreate and optionally re-seed the + database the first time that a context is used in the app domain. + To seed the database, create a derived class and override the Seed method. + + The type of the context. + + + Initializes a new instance of the class. + + + + Executes the strategy to initialize the database for the given context. + + The context. + + + is + null + . + + + + + A method that should be overridden to actually add data to the context for seeding. + The default implementation does nothing. + + The context to seed. + + + + An implementation of IDatabaseInitializer that will DELETE, recreate, and optionally re-seed the + database only if the model has changed since the database was created. + + The type of the context. + + Whether or not the model has changed is determined by the + method. + To seed the database create a derived class and override the Seed method. + + + + Initializes a new instance of the class. + + + + Executes the strategy to initialize the database for the given context. + + The context. + + + is + null + . + + + + + A method that should be overridden to actually add data to the context for seeding. + The default implementation does nothing. + + The context to seed. + + + + Returned by the ChangeTracker method of to provide access to features of + the context that are related to change tracking of entities. + + + + + Gets objects for all the entities tracked by this context. + + The entries. + + + + Gets objects for all the entities of the given type + tracked by this context. + + The type of the entity. + The entries. + + + + Checks if the is tracking any new, deleted, or changed entities or + relationships that will be sent to the database if is called. + + + Functionally, calling this method is equivalent to checking if there are any entities or + relationships in the Added, Updated, or Deleted state. + Note that this method calls unless + has been set to false. + + + True if underlying have changes, else false. + + + + + Detects changes made to the properties and relationships of POCO entities. Note that some types of + entity (such as change tracking proxies and entities that derive from + ) + report changes automatically and a call to DetectChanges is not normally needed for these types of entities. + Also note that normally DetectChanges is called automatically by many of the methods of + and its related classes such that it is rare that this method will need to be called explicitly. + However, it may be desirable, usually for performance reasons, to turn off this automatic calling of + DetectChanges using the AutoDetectChangesEnabled flag from . + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + A non-generic version of the class. + + + + + This is an abstract base class use to represent a scalar or complex property, or a navigation property + of an entity. Scalar and complex properties use the derived class , + reference navigation properties use the derived class , and collection + navigation properties use the derived class . + + + + + Validates this property. + + + Collection of objects. Never null. If the entity is valid the collection will be empty. + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Returns the equivalent generic object. + + The type of entity on which the member is declared. + The type of the property. + The equivalent generic object. + + + + Gets the name of the property. + + The property name. + + + + Gets or sets the current value of this property. + + The current value. + + + + The to which this member belongs. + + An entry for the entity that owns this member. + + + + Loads the collection of entities from the database. + Note that entities that already exist in the context are not overwritten with values from the database. + + + + + Asynchronously loads the collection of entities from the database. + Note that entities that already exist in the context are not overwritten with values from the database. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + + + + + Asynchronously loads the collection of entities from the database. + Note that entities that already exist in the context are not overwritten with values from the database. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + + + Returns the query that would be used to load this collection from the database. + The returned query can be modified using LINQ to perform filtering or operations in the database, such + as counting the number of entities in the collection in the database without actually loading them. + + A query for the collection. + + + + Returns the equivalent generic object. + + The type of entity on which the member is declared. + The type of the collection element. + The equivalent generic object. + + + + Gets the property name. + + The property name. + + + + Gets or sets the current value of the navigation property. The current value is + the entity that the navigation property references. + + The current value. + + + + Gets or sets a value indicating whether all entities of this collection have been loaded from the database. + + + Loading the related entities from the database either using lazy-loading, as part of a query, or explicitly + with one of the Load methods will set the IsLoaded flag to true. + IsLoaded can be explicitly set to true to prevent the related entities of this collection from being lazy-loaded. + This can be useful if the application has caused a subset of related entities to be loaded into this collection + and wants to prevent any other entities from being loaded automatically. + Note that explict loading using one of the Load methods will load all related entities from the database + regardless of whether or not IsLoaded is true. + When any related entity in the collection is detached the IsLoaded flag is reset to false indicating that the + not all related entities are now loaded. + + + true if all the related entities are loaded or the IsLoaded has been explicitly set to true; otherwise, false. + + + + + The to which this navigation property belongs. + + An entry for the entity that owns this navigation property. + + + + Instances of this class are returned from the Collection method of + and allow operations such as loading to + be performed on the an entity's collection navigation properties. + + The type of the entity to which this property belongs. + The type of the element in the collection of entities. + + + + This is an abstract base class use to represent a scalar or complex property, or a navigation property + of an entity. Scalar and complex properties use the derived class , + reference navigation properties use the derived class , and collection + navigation properties use the derived class . + + The type of the entity to which this property belongs. + The type of the property. + + + + Returns a new instance of the non-generic class for + the property represented by this object. + + The object representing the property. + A non-generic version. + + + + Validates this property. + + + Collection of objects. Never null. If the entity is valid the collection will be empty. + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + Gets the name of the property. + The name of the property. + + + + Gets or sets the current value of this property. + + The current value. + + + + The to which this member belongs. + + An entry for the entity that owns this member. + + + + Loads the collection of entities from the database. + Note that entities that already exist in the context are not overwritten with values from the database. + + + + + Asynchronously loads the collection of entities from the database. + Note that entities that already exist in the context are not overwritten with values from the database. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + + + + + Asynchronously loads the collection of entities from the database. + Note that entities that already exist in the context are not overwritten with values from the database. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + + + Returns the query that would be used to load this collection from the database. + The returned query can be modified using LINQ to perform filtering or operations in the database, such + as counting the number of entities in the collection in the database without actually loading them. + + A query for the collection. + + + + Returns a new instance of the non-generic class for + the navigation property represented by this object. + + The object representing the navigation property. + A non-generic version. + + + + Gets the property name. + + The property name. + + + + Gets or sets the current value of the navigation property. The current value is + the entity that the navigation property references. + + The current value. + + + + Gets or sets a value indicating whether all entities of this collection have been loaded from the database. + + + Loading the related entities from the database either using lazy-loading, as part of a query, or explicitly + with one of the Load methods will set the IsLoaded flag to true. + IsLoaded can be explicitly set to true to prevent the related entities of this collection from being lazy-loaded. + This can be useful if the application has caused a subset of related entities to be loaded into this collection + and wants to prevent any other entities from being loaded automatically. + Note that explict loading using one of the Load methods will load all related entities from the database + regardless of whether or not IsLoaded is true. + When any related entity in the collection is detached the IsLoaded flag is reset to false indicating that the + not all related entities are now loaded. + + + true if all the related entities are loaded or the IsLoaded has been explicitly set to true; otherwise, false. + + + + + The to which this navigation property belongs. + + An entry for the entity that owns this navigation property. + + + + An immutable representation of an Entity Data Model (EDM) model that can be used to create an + or can be passed to the constructor of a . + For increased performance, instances of this type should be cached and re-used to construct contexts. + + + + + Creates an instance of ObjectContext or class derived from ObjectContext. Note that an instance + of DbContext can be created instead by using the appropriate DbContext constructor. + If a derived ObjectContext is used, then it must have a public constructor with a single + EntityConnection parameter. + The connection passed is used by the ObjectContext created, but is not owned by the context. The caller + must dispose of the connection once the context has been disposed. + + The type of context to create. + An existing connection to a database for use by the context. + The context. + + + + A non-generic version of the class. + + + + + A non-generic version of the class. + + + + + Returns the equivalent generic object. + + The type of entity on which the member is declared. + The type of the property. + The equivalent generic object. + + + + Gets the property name. + + The property name. + + + + Gets or sets the original value of this property. + + The original value. + + + + Gets or sets the current value of this property. + + The current value. + + + + Gets or sets a value indicating whether the value of this property has been modified since + it was loaded from the database. + + + Setting this value to false for a modified property will revert the change by setting the + current value to the original value. If the result is that no properties of the entity are + marked as modified, then the entity will be marked as Unchanged. + Setting this value to false for properties of Added, Unchanged, or Deleted entities + is a no-op. + + + true if this instance is modified; otherwise, false . + + + + + The to which this property belongs. + + An entry for the entity that owns this property. + + + + The of the property for which this is a nested property. + This method will only return a non-null entry for properties of complex objects; it will + return null for properties of the entity itself. + + An entry for the parent complex property, or null if this is an entity property. + + + + Gets an object that represents a nested property of this property. + This method can be used for both scalar or complex properties. + + The name of the nested property. + An object representing the nested property. + + + + Gets an object that represents a nested complex property of this property. + + The name of the nested property. + An object representing the nested property. + + + + Returns the equivalent generic object. + + The type of entity on which the member is declared. + The type of the complex property. + The equivalent generic object. + + + + Instances of this class are returned from the ComplexProperty method of + and allow access to the state of a complex property. + + The type of the entity to which this property belongs. + The type of the property. + + + + Instances of this class are returned from the Property method of + and allow access to the state of the scalar + or complex property. + + The type of the entity to which this property belongs. + The type of the property. + + + + Returns a new instance of the non-generic class for + the property represented by this object. + + The object representing the property. + A non-generic version. + + + + Gets the property name. + + The property name. + + + + Gets or sets the original value of this property. + + The original value. + + + + Gets or sets the current value of this property. + + The current value. + + + + Gets or sets a value indicating whether the value of this property has been modified since + it was loaded from the database. + + + true if this instance is modified; otherwise, false . + + + + + The to which this property belongs. + + An entry for the entity that owns this property. + + + + The of the property for which this is a nested property. + This method will only return a non-null entry for properties of complex objects; it will + return null for properties of the entity itself. + + An entry for the parent complex property, or null if this is an entity property. + + + + Returns a new instance of the non-generic class for + the property represented by this object. + + The object representing the property. + A non-generic version. + + + + Gets an object that represents a nested property of this property. + This method can be used for both scalar or complex properties. + + The name of the nested property. + An object representing the nested property. + + + + Gets an object that represents a nested property of this property. + This method can be used for both scalar or complex properties. + + The type of the nested property. + The name of the nested property. + An object representing the nested property. + + + + Gets an object that represents a nested property of this property. + This method can be used for both scalar or complex properties. + + The type of the nested property. + An expression representing the nested property. + An object representing the nested property. + + + + Gets an object that represents a nested complex property of this property. + + The name of the nested property. + An object representing the nested property. + + + + Gets an object that represents a nested complex property of this property. + + The type of the nested property. + The name of the nested property. + An object representing the nested property. + + + + Gets an object that represents a nested complex property of this property. + + The type of the nested property. + An expression representing the nested property. + An object representing the nested property. + + + + Describes the origin of the database connection string associated with a . + + + + + The connection string was created by convention. + + + + + The connection string was read from external configuration. + + + + + The connection string was explicitly specified at runtime. + + + + + The connection string was overriden by connection information supplied to DbContextInfo. + + + + + Returned by the Configuration method of to provide access to configuration + options for the context. + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Gets or sets the value that determines whether SQL functions and commands should be always executed in a transaction. + + + This flag determines whether a new transaction will be started when methods such as + are executed outside of a transaction. + Note that this does not change the behavior of . + + + The default transactional behavior. + + + + + Gets or sets a value indicating whether lazy loading of relationships exposed as + navigation properties is enabled. Lazy loading is enabled by default. + + + true if lazy loading is enabled; otherwise, false . + + + + + Gets or sets a value indicating whether or not the framework will create instances of + dynamically generated proxy classes whenever it creates an instance of an entity type. + Note that even if proxy creation is enabled with this flag, proxy instances will only + be created for entity types that meet the requirements for being proxied. + Proxy creation is enabled by default. + + + true if proxy creation is enabled; otherwise, false . + + + + + Gets or sets a value indicating whether database null semantics are exhibited when comparing + two operands, both of which are potentially nullable. The default value is false. + + For example (operand1 == operand2) will be translated as: + + (operand1 = operand2) + + if UseDatabaseNullSemantics is true, respectively + + (((operand1 = operand2) AND (NOT (operand1 IS NULL OR operand2 IS NULL))) OR ((operand1 IS NULL) AND (operand2 IS NULL))) + + if UseDatabaseNullSemantics is false. + + + true if database null comparison behavior is enabled, otherwise false . + + + + + Gets or sets a value indicating whether the + method is called automatically by methods of and related classes. + The default value is true. + + + true if should be called automatically; otherwise, false. + + + + + Gets or sets a value indicating whether tracked entities should be validated automatically when + is invoked. + The default value is true. + + + + + Provides runtime information about a given type. + + + + + Creates a new instance representing a given type. + + + The type deriving from . + + + + + Creates a new instance representing a given targeting a specific database. + + + The type deriving from . + + Connection information for the database to be used. + + + + Creates a new instance representing a given type. An external list of + connection strings can be supplied and will be used during connection string resolution in place + of any connection strings specified in external configuration files. + + + It is preferable to use the constructor that accepts the entire config document instead of using this + constructor. Providing the entire config document allows DefaultConnectionFactroy entries in the config + to be found in addition to explicitly specified connection strings. + + + The type deriving from . + + A collection of connection strings. + + + + Creates a new instance representing a given type. An external config + object (e.g. app.config or web.config) can be supplied and will be used during connection string + resolution. This includes looking for connection strings and DefaultConnectionFactory entries. + + + The type deriving from . + + An object representing the config file. + + + + Creates a new instance representing a given , targeting a specific database. + An external config object (e.g. app.config or web.config) can be supplied and will be used during connection string + resolution. This includes looking for connection strings and DefaultConnectionFactory entries. + + + The type deriving from . + + An object representing the config file. + Connection information for the database to be used. + + + + Creates a new instance representing a given type. A + can be supplied in order to override the default determined provider used when constructing + the underlying EDM model. + + + The type deriving from . + + + A specifying the underlying ADO.NET provider to target. + + + + + Creates a new instance representing a given type. An external config + object (e.g. app.config or web.config) can be supplied and will be used during connection string + resolution. This includes looking for connection strings and DefaultConnectionFactory entries. + A can be supplied in order to override the default determined + provider used when constructing the underlying EDM model. This can be useful to prevent EF from + connecting to discover a manifest token. + + + The type deriving from . + + An object representing the config file. + + A specifying the underlying ADO.NET provider to target. + + + + + If instances of the underlying type can be created, returns + a new instance; otherwise returns null. + + + A instance. + + + + + The concrete type. + + + + + Whether or not instances of the underlying type can be created. + + + + + The connection string used by the underlying type. + + + + + The connection string name used by the underlying type. + + + + + The ADO.NET provider name of the connection used by the underlying type. + + + + + The origin of the connection string used by the underlying type. + + + + + An action to be run on the DbModelBuilder after OnModelCreating has been run on the context. + + + + + A non-generic version of the class. + + + + + Queries the database for copies of the values of the tracked entity as they currently exist in the database. + Note that changing the values in the returned dictionary will not update the values in the database. + If the entity is not found in the database then null is returned. + + The store values. + + + + Asynchronously queries the database for copies of the values of the tracked entity as they currently exist in the database. + Note that changing the values in the returned dictionary will not update the values in the database. + If the entity is not found in the database then null is returned. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains the store values. + + + + + Asynchronously queries the database for copies of the values of the tracked entity as they currently exist in the database. + Note that changing the values in the returned dictionary will not update the values in the database. + If the entity is not found in the database then null is returned. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the store values. + + + + + Reloads the entity from the database overwriting any property values with values from the database. + The entity will be in the Unchanged state after calling this method. + + + + + Asynchronously reloads the entity from the database overwriting any property values with values from the database. + The entity will be in the Unchanged state after calling this method. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + + + + + Asynchronously reloads the entity from the database overwriting any property values with values from the database. + The entity will be in the Unchanged state after calling this method. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + + + Gets an object that represents the reference (i.e. non-collection) navigation property from this + entity to another entity. + + The name of the navigation property. + An object representing the navigation property. + + + + Gets an object that represents the collection navigation property from this + entity to a collection of related entities. + + The name of the navigation property. + An object representing the navigation property. + + + + Gets an object that represents a scalar or complex property of this entity. + + The name of the property. + An object representing the property. + + + + Gets an object that represents a complex property of this entity. + + The name of the complex property. + An object representing the complex property. + + + + Gets an object that represents a member of the entity. The runtime type of the returned object will + vary depending on what kind of member is asked for. The currently supported member types and their return + types are: + Reference navigation property: . + Collection navigation property: . + Primitive/scalar property: . + Complex property: . + + The name of the member. + An object representing the member. + + + + Returns a new instance of the generic class for the given + generic type for the tracked entity represented by this object. + Note that the type of the tracked entity must be compatible with the generic type or + an exception will be thrown. + + The type of the entity. + A generic version. + + + + Validates this instance and returns validation result. + + + Entity validation result. Possibly null if + DbContext.ValidateEntity(DbEntityEntry, IDictionary{object,object}) + method is overridden. + + + + + Determines whether the specified is equal to this instance. + Two instances are considered equal if they are both entries for + the same entity on the same . + + + The to compare with this instance. + + + true if the specified is equal to this instance; otherwise, false . + + + + + Determines whether the specified is equal to this instance. + Two instances are considered equal if they are both entries for + the same entity on the same . + + + The to compare with this instance. + + + true if the specified is equal to this instance; otherwise, false . + + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Gets the entity. + + The entity. + + + + Gets or sets the state of the entity. + + The state. + + + + Gets the current property values for the tracked entity represented by this object. + + The current values. + + + + Gets the original property values for the tracked entity represented by this object. + The original values are usually the entity's property values as they were when last queried from + the database. + + The original values. + + + + Instances of this class provide access to information about and control of entities that + are being tracked by the . Use the Entity or Entities methods of + the context to obtain objects of this type. + + The type of the entity. + + + + Queries the database for copies of the values of the tracked entity as they currently exist in the database. + Note that changing the values in the returned dictionary will not update the values in the database. + If the entity is not found in the database then null is returned. + + The store values. + + + + Asynchronously queries the database for copies of the values of the tracked entity as they currently exist in the database. + Note that changing the values in the returned dictionary will not update the values in the database. + If the entity is not found in the database then null is returned. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + The task result contains the store values. + + + + + Asynchronously queries the database for copies of the values of the tracked entity as they currently exist in the database. + Note that changing the values in the returned dictionary will not update the values in the database. + If the entity is not found in the database then null is returned. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + The task result contains the store values. + + + + + Reloads the entity from the database overwriting any property values with values from the database. + The entity will be in the Unchanged state after calling this method. + + + + + Asynchronously reloads the entity from the database overwriting any property values with values from the database. + The entity will be in the Unchanged state after calling this method. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + + + + + Asynchronously reloads the entity from the database overwriting any property values with values from the database. + The entity will be in the Unchanged state after calling this method. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + + + Gets an object that represents the reference (i.e. non-collection) navigation property from this + entity to another entity. + + The name of the navigation property. + An object representing the navigation property. + + + + Gets an object that represents the reference (i.e. non-collection) navigation property from this + entity to another entity. + + The type of the property. + The name of the navigation property. + An object representing the navigation property. + + + + Gets an object that represents the reference (i.e. non-collection) navigation property from this + entity to another entity. + + The type of the property. + An expression representing the navigation property. + An object representing the navigation property. + + + + Gets an object that represents the collection navigation property from this + entity to a collection of related entities. + + The name of the navigation property. + An object representing the navigation property. + + + + Gets an object that represents the collection navigation property from this + entity to a collection of related entities. + + The type of elements in the collection. + The name of the navigation property. + An object representing the navigation property. + + + + Gets an object that represents the collection navigation property from this + entity to a collection of related entities. + + The type of elements in the collection. + An expression representing the navigation property. + An object representing the navigation property. + + + + Gets an object that represents a scalar or complex property of this entity. + + The name of the property. + An object representing the property. + + + + Gets an object that represents a scalar or complex property of this entity. + + The type of the property. + The name of the property. + An object representing the property. + + + + Gets an object that represents a scalar or complex property of this entity. + + The type of the property. + An expression representing the property. + An object representing the property. + + + + Gets an object that represents a complex property of this entity. + + The name of the complex property. + An object representing the complex property. + + + + Gets an object that represents a complex property of this entity. + + The type of the complex property. + The name of the complex property. + An object representing the complex property. + + + + Gets an object that represents a complex property of this entity. + + The type of the complex property. + An expression representing the complex property. + An object representing the complex property. + + + + Gets an object that represents a member of the entity. The runtime type of the returned object will + vary depending on what kind of member is asked for. The currently supported member types and their return + types are: + Reference navigation property: . + Collection navigation property: . + Primitive/scalar property: . + Complex property: . + + The name of the member. + An object representing the member. + + + + Gets an object that represents a member of the entity. The runtime type of the returned object will + vary depending on what kind of member is asked for. The currently supported member types and their return + types are: + Reference navigation property: . + Collection navigation property: . + Primitive/scalar property: . + Complex property: . + + The type of the member. + The name of the member. + An object representing the member. + + + + Returns a new instance of the non-generic class for + the tracked entity represented by this object. + + The object representing the tracked entity. + A non-generic version. + + + + Validates this instance and returns validation result. + + + Entity validation result. Possibly null if + DbContext.ValidateEntity(DbEntityEntry, IDictionary{object, object}) + method is overridden. + + + + + Determines whether the specified is equal to this instance. + Two instances are considered equal if they are both entries for + the same entity on the same . + + + The to compare with this instance. + + + true if the specified is equal to this instance; otherwise, false . + + + + + Determines whether the specified is equal to this instance. + Two instances are considered equal if they are both entries for + the same entity on the same . + + + The to compare with this instance. + + + true if the specified is equal to this instance; otherwise, false . + + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Gets the entity. + + The entity. + + + + Gets or sets the state of the entity. + + The state. + + + + Gets the current property values for the tracked entity represented by this object. + + The current values. + + + + Gets the original property values for the tracked entity represented by this object. + The original values are usually the entity's property values as they were when last queried from + the database. + + The original values. + + + + Represents an Entity Data Model (EDM) created by the . + The Compile method can be used to go from this EDM representation to a + which is a compiled snapshot of the model suitable for caching and creation of + or instances. + + + + + Creates a for this mode which is a compiled snapshot + suitable for caching and creation of instances. + + The compiled model. + + + + Gets the provider information. + + + + + Gets the provider manifest. + + + + + Gets the conceptual model. + + + + + Gets the store model. + + + + + Gets the mapping model. + + + + + A collection of all the properties for an underlying entity or complex object. + + + An instance of this class can be converted to an instance of the generic class + using the Cast method. + Complex properties in the underlying entity or complex object are represented in + the property values as nested instances of this class. + + + + + Creates an object of the underlying type for this dictionary and hydrates it with property + values from this dictionary. + + The properties of this dictionary copied into a new object. + + + + Sets the values of this dictionary by reading values out of the given object. + The given object can be of any type. Any property on the object with a name that + matches a property name in the dictionary and can be read will be read. Other + properties will be ignored. This allows, for example, copying of properties from + simple Data Transfer Objects (DTOs). + + The object to read values from. + + + + Creates a new dictionary containing copies of all the properties in this dictionary. + Changes made to the new dictionary will not be reflected in this dictionary and vice versa. + + A clone of this dictionary. + + + + Sets the values of this dictionary by reading values from another dictionary. + The other dictionary must be based on the same type as this dictionary, or a type derived + from the type for this dictionary. + + The dictionary to read values from. + + + + Gets the value of the property just like using the indexed property getter but + typed to the type of the generic parameter. This is useful especially with + nested dictionaries to avoid writing expressions with lots of casts. + + The type of the property. + Name of the property. + The value of the property. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Gets the set of names of all properties in this dictionary as a read-only set. + + The property names. + + + + Gets or sets the value of the property with the specified property name. + The value may be a nested instance of this class. + + The property name. + The value of the property. + + + + Groups a pair of strings that identify a provider and server version together into a single object. + + + Instances of this class act as the key for resolving a for a specific + provider from a . This is typically used when registering spatial services + in or when the spatial services specific to a provider is + resolved by an implementation of . + + + + + Creates a new object for a given provider invariant name and manifest token. + + + A string that identifies that provider. For example, the SQL Server + provider uses the string "System.Data.SqlCient". + + + A string that identifies that version of the database server being used. For example, the SQL Server + provider uses the string "2008" for SQL Server 2008. This cannot be null but may be empty. + The manifest token is sometimes referred to as a version hint. + + + + + + + + + + + A string that identifies that provider. For example, the SQL Server + provider uses the string "System.Data.SqlCient". + + + + + A string that identifies that version of the database server being used. For example, the SQL Server + provider uses the string "2008" for SQL Server 2008. This cannot be null but may be empty. + + + + + A non-generic version of the class. + + + + + Loads the entity from the database. + Note that if the entity already exists in the context, then it will not overwritten with values from the database. + + + + + Asynchronously loads the entity from the database. + Note that if the entity already exists in the context, then it will not overwritten with values from the database. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + + + + + Asynchronously loads the entity from the database. + Note that if the entity already exists in the context, then it will not overwritten with values from the database. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + + + Returns the query that would be used to load this entity from the database. + The returned query can be modified using LINQ to perform filtering or operations in the database. + + A query for the entity. + + + + Returns the equivalent generic object. + + The type of entity on which the member is declared. + The type of the property. + The equivalent generic object. + + + + Gets the property name. + + The property name. + + + + Gets or sets the current value of the navigation property. The current value is + the entity that the navigation property references. + + The current value. + + + + Gets or sets a value indicating whether the entity has been loaded from the database. + + + Loading the related entity from the database either using lazy-loading, as part of a query, or explicitly + with one of the Load methods will set the IsLoaded flag to true. + IsLoaded can be explicitly set to true to prevent the related entity from being lazy-loaded. + Note that explict loading using one of the Load methods will load the related entity from the database + regardless of whether or not IsLoaded is true. + When a related entity is detached the IsLoaded flag is reset to false indicating that the related entity is + no longer loaded. + + + true if the entity is loaded or the IsLoaded has been explicitly set to true; otherwise, false. + + + + + The to which this navigation property belongs. + + An entry for the entity that owns this navigation property. + + + + Instances of this class are returned from the Reference method of + and allow operations such as loading to + be performed on the an entity's reference navigation properties. + + The type of the entity to which this property belongs. + The type of the property. + + + + Loads the entity from the database. + Note that if the entity already exists in the context, then it will not overwritten with values from the database. + + + + + Asynchronously loads the entity from the database. + Note that if the entity already exists in the context, then it will not overwritten with values from the database. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A task that represents the asynchronous operation. + + + + + Asynchronously loads the entity from the database. + Note that if the entity already exists in the context, then it will not overwritten with values from the database. + + + Multiple active operations on the same context instance are not supported. Use 'await' to ensure + that any asynchronous operations have completed before calling another method on this context. + + + A to observe while waiting for the task to complete. + + + A task that represents the asynchronous operation. + + + + + Returns the query that would be used to load this entity from the database. + The returned query can be modified using LINQ to perform filtering or operations in the database. + + A query for the entity. + + + + Returns a new instance of the non-generic class for + the navigation property represented by this object. + + The object representing the navigation property. + A non-generic version. + + + + Gets the property name. + + The property name. + + + + Gets or sets the current value of the navigation property. The current value is + the entity that the navigation property references. + + The current value. + + + + Gets or sets a value indicating whether the entity has been loaded from the database. + + + Loading the related entity from the database either using lazy-loading, as part of a query, or explicitly + with one of the Load methods will set the IsLoaded flag to true. + IsLoaded can be explicitly set to true to prevent the related entity from being lazy-loaded. + Note that explict loading using one of the Load methods will load the related entity from the database + regardless of whether or not IsLoaded is true. + When a related entity is detached the IsLoaded flag is reset to false indicating that the related entity is + no longer loaded. + + + true if the entity is loaded or the IsLoaded has been explicitly set to true; otherwise, false. + + + + + The to which this navigation property belongs. + + An entry for the entity that owns this navigation property. + + + + Exception thrown by when it was expected that SaveChanges for an entity would + result in a database update but in fact no rows in the database were affected. This usually indicates + that the database has been concurrently updated such that a concurrency token that was expected to match + did not actually match. + Note that state entries referenced by this exception are not serialized due to security and accesses to + the state entries after serialization will return null. + + + + + Exception thrown by when the saving of changes to the database fails. + Note that state entries referenced by this exception are not serialized due to security and accesses to the + state entries after serialization will return null. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + The message. + The inner exception. + + + + Gets objects that represents the entities that could not + be saved to the database. + + The entries representing the entities that could not be saved. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + The message. + The inner exception. + + + + Represents an entity used to store metadata about an EDM in the database. + + + + + Attempts to get the model hash calculated by Code First for the given context. + This method will return null if the context is not being used in Code First mode. + + The context. + The hash string. + + + + Gets or sets the ID of the metadata entity, which is currently always 1. + + The id. + + + + Gets or sets the model hash which is used to check whether the model has + changed since the database was created from it. + + The model hash. + + + + Contains methods used to access the Entity Data Model created by Code First in the EDMX form. + These methods are typically used for debugging when there is a need to look at the model that + Code First creates internally. + + + + + Uses Code First with the given context and writes the resulting Entity Data Model to the given + writer in EDMX form. This method can only be used with context instances that use Code First + and create the model internally. The method cannot be used for contexts created using Database + First or Model First, for contexts created using a pre-existing , or + for contexts created using a pre-existing . + + The context. + The writer. + + + + Writes the Entity Data Model represented by the given to the + given writer in EDMX form. + + An object representing the EDM. + The writer. + + + + A factory for creating derived instances. Implement this + interface to enable design-time services for context types that do not have a + public default constructor. + At design-time, derived instances can be created in order to enable specific + design-time experiences such as model rendering, DDL generation etc. To enable design-time instantiation + for derived types that do not have a public, default constructor, implement + this interface. Design-time services will auto-discover implementations of this interface that are in the + same assembly as the derived type. + + The type of the context. + + + + Creates a new instance of a derived type. + + An instance of TContext + + + + This convention causes DbModelBuilder to include metadata about the model + when it builds the model. When creates a model by convention it will + add this convention to the list of those used by the DbModelBuilder. This will then result in + model metadata being written to the database if the DbContext is used to create the database. + This can then be used as a quick check to see if the model has changed since the last time it was + used against the database. + This convention can be removed from the conventions by overriding + the OnModelCreating method on a derived DbContext class. + + + + + This convention uses the name of the derived + class as the container for the conceptual model built by + Code First. + + + + + Applies the convention to the given model. + + The container to apply the convention to. + The model. + + + + This convention uses the namespace of the derived + class as the namespace of the conceptual model built by + Code First. + + + + + Instances of this class are used internally to create constant expressions for + that are inserted into the expression tree to replace references to + and . + + The type of the element. + + + + The public property expected in the LINQ expression tree. + + The query. + + + + Instances of this class are used to create DbConnection objects for + SQL Server Compact Edition based on a given database name or connection string. + + + It is necessary to provide the provider invariant name of the SQL Server Compact + Edition to use when creating an instance of this class. This is because different + versions of SQL Server Compact Editions use different invariant names. + An instance of this class can be set on the class to + cause all DbContexts created with no connection information or just a database + name or connection string to use SQL Server Compact Edition by default. + This class is immutable since multiple threads may access instances simultaneously + when creating connections. + + + + + Creates a new connection factory with empty (default) DatabaseDirectory and BaseConnectionString + properties. + + The provider invariant name that specifies the version of SQL Server Compact Edition that should be used. + + + + Creates a new connection factory with the given DatabaseDirectory and BaseConnectionString properties. + + The provider invariant name that specifies the version of SQL Server Compact Edition that should be used. + The path to prepend to the database name that will form the file name used by SQL Server Compact Edition when it creates or reads the database file. An empty string means that SQL Server Compact Edition will use its default for the database file location. + The connection string to use for options to the database other than the 'Data Source'. The Data Source will be prepended to this string based on the database name when CreateConnection is called. + + + + Creates a connection for SQL Server Compact Edition based on the given database name or connection string. + If the given string contains an '=' character then it is treated as a full connection string, + otherwise it is treated as a database name only. + + The database name or connection string. + An initialized DbConnection. + + + + The path to prepend to the database name that will form the file name used by + SQL Server Compact Edition when it creates or reads the database file. + The default value is "|DataDirectory|", which means the file will be placed + in the designated data directory. + + + + + The connection string to use for options to the database other than the 'Data Source'. + The Data Source will be prepended to this string based on the database name when + CreateConnection is called. + The default is the empty string, which means no other options will be used. + + + + + The provider invariant name that specifies the version of SQL Server Compact Edition + that should be used. + + + + + Instances of this class are used to create DbConnection objects for + SQL Server based on a given database name or connection string. By default, the connection is + made to '.\SQLEXPRESS'. This can be changed by changing the base connection + string when constructing a factory instance. + + + An instance of this class can be set on the class to + cause all DbContexts created with no connection information or just a database + name or connection string to use SQL Server by default. + This class is immutable since multiple threads may access instances simultaneously + when creating connections. + + + + + Creates a new connection factory with a default BaseConnectionString property of + 'Data Source=.\SQLEXPRESS; Integrated Security=True; MultipleActiveResultSets=True;'. + + + + + Creates a new connection factory with the given BaseConnectionString property. + + The connection string to use for options to the database other than the 'Initial Catalog'. The 'Initial Catalog' will be prepended to this string based on the database name when CreateConnection is called. + + + + Creates a connection for SQL Server based on the given database name or connection string. + If the given string contains an '=' character then it is treated as a full connection string, + otherwise it is treated as a database name only. + + The database name or connection string. + An initialized DbConnection. + + + + The connection string to use for options to the database other than the 'Initial Catalog'. + The 'Initial Catalog' will be prepended to this string based on the database name when + CreateConnection is called. + The default is 'Data Source=.\SQLEXPRESS; Integrated Security=True;'. + + + + + This attribute can be applied to either an entire derived class or to + individual or properties on that class. When applied + any discovered or properties will still be included + in the model but will not be automatically initialized. + + + + + Thrown when a context is generated from the templates in Database First or Model + First mode and is then used in Code First mode. + + + Code generated using the T4 templates provided for Database First and Model First use may not work + correctly if used in Code First mode. To use these classes with Code First please add any additional + configuration using attributes or the DbModelBuilder API and then remove the code that throws this + exception. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The object that holds the serialized object data. + The contextual information about the source or destination. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + The message. + The inner exception. + + + + Allows configuration to be performed for an complex type in a model. + A ComplexTypeConfiguration can be obtained via the ComplexType method on + or a custom type derived from ComplexTypeConfiguration + can be registered via the Configurations property on . + + The complex type to be configured. + + + + Allows configuration to be performed for a type in a model. + + The type to be configured. + + + + Configures a property that is defined on this type. + + The type of the property being configured. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + The type of the property being configured. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is defined on this type. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Initializes a new instance of ComplexTypeConfiguration + + + + + Excludes a property from the model so that it will not be mapped to the database. + + The type of the property to be ignored. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The same ComplexTypeConfiguration instance so that multiple calls can be chained. + + + + + + + + + + + + + + + + Allows derived configuration classes for entities and complex types to be registered with a + . + + + Derived configuration classes are created by deriving from + or and using a type to be included in the model as the generic + parameter. + Configuration can be performed without creating derived configuration classes via the Entity and ComplexType + methods on . + + + + + Discovers all types that inherit from or + in the given assembly and adds an instance + of each discovered type to this registrar. + + + Note that only types that are abstract or generic type definitions are skipped. Every + type that is discovered and added must provide a parameterless constructor. + + The assembly containing model configurations to add. + The same ConfigurationRegistrar instance so that multiple calls can be chained. + + + + Adds an to the . + Only one can be added for each type in a model. + + The entity type being configured. + The entity type configuration to be added. + The same ConfigurationRegistrar instance so that multiple calls can be chained. + + + + Adds an to the . + Only one can be added for each type in a model. + + The complex type being configured. + The complex type configuration to be added + The same ConfigurationRegistrar instance so that multiple calls can be chained. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Allows the conventions used by a instance to be customized. + The default conventions can be found in the System.Data.Entity.ModelConfiguration.Conventions namespace. + + + + + Discover all conventions in the given assembly and add them to the . + + + This method add all conventions ordered by type name. The order in which conventions are added + can have an impact on how they behave because it governs the order in which they are run. + All conventions found must have a parameterless public constructor. + + The assembly containing conventions to be added. + + + + Enables one or more conventions for the . + + The conventions to be enabled. + + + + Enables a convention for the . + + The type of the convention to be enabled. + + + + Enables a convention for the . This convention + will run after the one specified. + + The type of the convention after which the enabled one will run. + The convention to enable. + + + + Enables a configuration convention for the . This convention + will run before the one specified. + + The type of the convention before which the enabled one will run. + The convention to enable. + + + + Disables one or more conventions for the . + + The conventions to be disabled. + + + + Disables a convention for the . + The default conventions that are available for removal can be found in the + System.Data.Entity.ModelConfiguration.Conventions namespace. + + The type of the convention to be disabled. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Configures the table and column mapping for an entity type or a sub-set of properties from an entity type. + This configuration functionality is available via the Code First Fluent API, see . + + The entity type to be mapped. + + + Initializes a new instance of the class. + + + + Configures the properties that will be included in this mapping fragment. + If this method is not called then all properties that have not yet been + included in a mapping fragment will be configured. + + An anonymous type including the properties to be mapped. + A lambda expression to an anonymous type that contains the properties to be mapped. C#: t => new { t.Id, t.Property1, t.Property2 } VB.Net: Function(t) New With { p.Id, t.Property1, t.Property2 } + + + + Configures a property that is included in this mapping fragment. + + The type of the property being configured. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + The type of the property being configured. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Configures a property that is included in this mapping fragment. + + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to configure the property. + + + + Re-maps all properties inherited from base types. + When configuring a derived type to be mapped to a separate table this will cause all properties to + be included in the table rather than just the non-inherited properties. This is known as + Table per Concrete Type (TPC) mapping. + + The same configuration instance so that multiple calls can be chained. + + + + Configures the table name to be mapped to. + + Name of the table. + The same configuration instance so that multiple calls can be chained. + + + + Configures the table name and schema to be mapped to. + + Name of the table. + Schema of the table. + The same configuration instance so that multiple calls can be chained. + + + + Sets an annotation in the model for the table to which this entity is mapped. The annotation + value can later be used when processing the table such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Passing a null value clears any annotation with + the given name on the column that had been previously set. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same configuration instance so that multiple calls can be chained. + + + + Configures the discriminator column used to differentiate between types in an inheritance hierarchy. + + The name of the discriminator column. + A configuration object to further configure the discriminator column and values. + + + + Configures the discriminator condition used to differentiate between types in an inheritance hierarchy. + + The type of the property being used to discriminate between types. + A lambda expression representing the property being used to discriminate between types. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object to further configure the discriminator condition. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Used to configure a column with length facets for an entity type or complex type. This configuration functionality is exposed by the Code First Fluent API, see . + + + + + Configures a primitive column from an entity type. + + + + Configures the primitive column to be optional. + The same instance so that multiple calls can be chained. + + + Configures the primitive column to be required. + The same instance so that multiple calls can be chained. + + + Configures the data type of the primitive column used to store the property. + The same instance so that multiple calls can be chained. + The name of the database provider specific data type. + + + Configures the order of the primitive column used to store the property. This method is also used to specify key ordering when an entity type has a composite key. + The same instance so that multiple calls can be chained. + The order that this column should appear in the database table. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + Configures the column to allow the maximum length supported by the database provider. + The same instance so that multiple calls can be chained. + + + Configures the column to have the specified maximum length. + The same instance so that multiple calls can be chained. + The maximum length for the column. Setting the value to null will remove any maximum length restriction from the column and a default length will be used for the database column. + + + Configures the column to be fixed length. + The same instance so that multiple calls can be chained. + + + Configures the column to be variable length. + The same instance so that multiple calls can be chained. + + + + + + + + + + + + + + + + Configures a condition used to discriminate between types in an inheritance hierarchy based on the values assigned to a property. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the condition to require a value in the property. + Rows that do not have a value assigned to column that this property is stored in are + assumed to be of the base type of this entity type. + + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Configures a database column used to store a string values. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the column to allow the maximum length supported by the database provider. + + The same StringColumnConfiguration instance so that multiple calls can be chained. + + + + Configures the property to have the specified maximum length. + + + The maximum length for the property. Setting 'null' will result in a default length being used for the column. + + The same StringColumnConfiguration instance so that multiple calls can be chained. + + + + Configures the column to be fixed length. + Use HasMaxLength to set the length that the property is fixed to. + + The same StringColumnConfiguration instance so that multiple calls can be chained. + + + + Configures the column to be variable length. + Columns are variable length by default. + + The same StringColumnConfiguration instance so that multiple calls can be chained. + + + + Configures the column to be optional. + + The same StringColumnConfiguration instance so that multiple calls can be chained. + + + + Configures the column to be required. + + The same StringColumnConfiguration instance so that multiple calls can be chained. + + + + Configures the data type of the database column. + + Name of the database provider specific data type. + The same StringColumnConfiguration instance so that multiple calls can be chained. + + + + Configures the order of the database column. + + The order that this column should appear in the database table. + The same StringColumnConfiguration instance so that multiple calls can be chained. + + + + Configures the column to support Unicode string content. + + The same StringColumnConfiguration instance so that multiple calls can be chained. + + + + Configures whether or not the column supports Unicode string content. + + Value indicating if the column supports Unicode string content or not. Specifying 'null' will remove the Unicode facet from the column. Specifying 'null' will cause the same runtime behavior as specifying 'false'. + The same StringColumnConfiguration instance so that multiple calls can be chained. + + + + + + + + + + + + + + + + Configures a discriminator column used to differentiate between types in an inheritance hierarchy. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the discriminator value used to identify the entity type being + configured from other types in the inheritance hierarchy. + + Type of the discriminator value. + The value to be used to identify the entity type. + A configuration object to configure the column used to store discriminator values. + + + + Configures the discriminator value used to identify the entity type being + configured from other types in the inheritance hierarchy. + + Type of the discriminator value. + The value to be used to identify the entity type. + A configuration object to configure the column used to store discriminator values. + + + + Configures the discriminator value used to identify the entity type being + configured from other types in the inheritance hierarchy. + + The value to be used to identify the entity type. + A configuration object to configure the column used to store discriminator values. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Configures a many relationship from an entity type. + + The entity type that the relationship originates from. + The entity type that the relationship targets. + + + + Configures the relationship to be many:many with a navigation property on the other side of the relationship. + + An lambda expression representing the navigation property on the other end of the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be many:many without a navigation property on the other side of the relationship. + + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be many:required with a navigation property on the other side of the relationship. + + An lambda expression representing the navigation property on the other end of the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be many:required without a navigation property on the other side of the relationship. + + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be many:optional with a navigation property on the other side of the relationship. + + An lambda expression representing the navigation property on the other end of the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be many:optional without a navigation property on the other side of the relationship. + + A configuration object that can be used to further configure the relationship. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Configures an optional relationship from an entity type. + + The entity type that the relationship originates from. + The entity type that the relationship targets. + + + + Configures the relationship to be optional:many with a navigation property on the other side of the relationship. + + An lambda expression representing the navigation property on the other end of the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be optional:many without a navigation property on the other side of the relationship. + + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be optional:required with a navigation property on the other side of the relationship. + + An lambda expression representing the navigation property on the other end of the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be optional:required without a navigation property on the other side of the relationship. + + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be optional:optional with a navigation property on the other side of the relationship. + The entity type being configured will be the dependent and contain a foreign key to the principal. + The entity type that the relationship targets will be the principal in the relationship. + + An lambda expression representing the navigation property on the other end of the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be optional:optional without a navigation property on the other side of the relationship. + The entity type being configured will be the dependent and contain a foreign key to the principal. + The entity type that the relationship targets will be the principal in the relationship. + + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be optional:optional with a navigation property on the other side of the relationship. + The entity type being configured will be the principal in the relationship. + The entity type that the relationship targets will be the dependent and contain a foreign key to the principal. + + A lambda expression representing the navigation property on the other end of the relationship. + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be optional:optional without a navigation property on the other side of the relationship. + The entity type being configured will be the principal in the relationship. + The entity type that the relationship targets will be the dependent and contain a foreign key to the principal. + + A configuration object that can be used to further configure the relationship. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Configures an required relationship from an entity type. + + The entity type that the relationship originates from. + The entity type that the relationship targets. + + + + Configures the relationship to be required:many with a navigation property on the other side of the relationship. + + An lambda expression representing the navigation property on the other end of the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be required:many without a navigation property on the other side of the relationship. + + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be required:optional with a navigation property on the other side of the relationship. + + An lambda expression representing the navigation property on the other end of the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be required:optional without a navigation property on the other side of the relationship. + + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be required:required with a navigation property on the other side of the relationship. + The entity type being configured will be the dependent and contain a foreign key to the principal. + The entity type that the relationship targets will be the principal in the relationship. + + An lambda expression representing the navigation property on the other end of the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be required:required without a navigation property on the other side of the relationship. + The entity type being configured will be the dependent and contain a foreign key to the principal. + The entity type that the relationship targets will be the principal in the relationship. + + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be required:required with a navigation property on the other side of the relationship. + The entity type being configured will be the principal in the relationship. + The entity type that the relationship targets will be the dependent and contain a foreign key to the principal. + + An lambda expression representing the navigation property on the other end of the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures the relationship to be required:required without a navigation property on the other side of the relationship. + The entity type being configured will be the principal in the relationship. + The entity type that the relationship targets will be the dependent and contain a foreign key to the principal. + + A configuration object that can be used to further configure the relationship. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Base class for performing configuration of a relationship. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures a relationship that can support cascade on delete functionality. + + + + + Configures cascade delete to be on for the relationship. + + + + + Configures whether or not cascade delete is on for the relationship. + + Value indicating if cascade delete is on or not. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Configures a relationship that can support foreign key properties that are exposed in the object model. + This configuration functionality is available via the Code First Fluent API, see . + + The dependent entity type. + + + + Configures a relationship that can only support foreign key properties that are not exposed in the object model. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the relationship to use foreign key property(s) that are not exposed in the object model. + The column(s) and table can be customized by specifying a configuration action. + If an empty configuration action is specified then column name(s) will be generated by convention. + If foreign key properties are exposed in the object model then use the HasForeignKey method. + Not all relationships support exposing foreign key properties in the object model. + + Action that configures the foreign key column(s) and table. + A configuration object that can be used to further configure the relationship. + + + + + + + + + + + + + + + + Configures the relationship to use foreign key property(s) that are exposed in the object model. + If the foreign key property(s) are not exposed in the object model then use the Map method. + + The type of the key. + A lambda expression representing the property to be used as the foreign key. If the foreign key is made up of multiple properties then specify an anonymous type including the properties. When using multiple foreign key properties, the properties must be specified in the same order that the the primary key properties were configured for the principal entity type. + A configuration object that can be used to further configure the relationship. + + + + + + + + + + + + + + + + Configures the table and column mapping of a relationship that does not expose foreign key properties in the object model. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the name of the column(s) for the foreign key. + + The foreign key column names. When using multiple foreign key properties, the properties must be specified in the same order that the the primary key properties were configured for the target entity type. + The same ForeignKeyAssociationMappingConfiguration instance so that multiple calls can be chained. + + + + Sets an annotation in the model for a database column that has been configured with . + The annotation value can later be used when processing the column such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Passing a null value clears any annotation with + the given name on the column that had been previously set. + + The name of the column that was configured with the HasKey method. + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same ForeignKeyAssociationMappingConfiguration instance so that multiple calls can be chained. + + + + Configures the table name that the foreign key column(s) reside in. + The table that is specified must already be mapped for the entity type. + If you want the foreign key(s) to reside in their own table then use the Map method + on to perform + entity splitting to create the table with just the primary key property. Foreign keys can + then be added to the table via this method. + + Name of the table. + The same ForeignKeyAssociationMappingConfiguration instance so that multiple calls can be chained. + + + + Configures the table name and schema that the foreign key column(s) reside in. + The table that is specified must already be mapped for the entity type. + If you want the foreign key(s) to reside in their own table then use the Map method + on to perform + entity splitting to create the table with just the primary key property. Foreign keys can + then be added to the table via this method. + + Name of the table. + Schema of the table. + The same ForeignKeyAssociationMappingConfiguration instance so that multiple calls can be chained. + + + + + + + + + + + + + + + + + + + Configures the table and column mapping of a many:many relationship. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the join table name for the relationship. + + Name of the table. + The same ManyToManyAssociationMappingConfiguration instance so that multiple calls can be chained. + + + + Configures the join table name and schema for the relationship. + + Name of the table. + Schema of the table. + The same ManyToManyAssociationMappingConfiguration instance so that multiple calls can be chained. + + + + Sets an annotation in the model for the join table. The annotation value can later be used when + processing the table such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Passing a null value clears any annotation with + the given name on the column that had been previously set. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same configuration instance so that multiple calls can be chained. + + + + Configures the name of the column(s) for the left foreign key. + The left foreign key points to the parent entity of the navigation property specified in the HasMany call. + + The foreign key column names. When using multiple foreign key properties, the properties must be specified in the same order that the the primary key properties were configured for the target entity type. + The same ManyToManyAssociationMappingConfiguration instance so that multiple calls can be chained. + + + + Configures the name of the column(s) for the right foreign key. + The right foreign key points to the parent entity of the the navigation property specified in the WithMany call. + + The foreign key column names. When using multiple foreign key properties, the properties must be specified in the same order that the the primary key properties were configured for the target entity type. + The same ManyToManyAssociationMappingConfiguration instance so that multiple calls can be chained. + + + + + + Determines whether the specified object is equal to the current object. + true if the specified object is equal to the current object; otherwise, false. + The object to compare with the current object. + + + + + + + + + + + + + Configures a many:many relationship. + This configuration functionality is available via the Code First Fluent API, see . + + The type of the parent entity of the navigation property specified in the HasMany call. + The type of the parent entity of the navigation property specified in the WithMany call. + + + + Configures the foreign key column(s) and table used to store the relationship. + + Action that configures the foreign key column(s) and table. + The same instance so that multiple calls can be chained. + + + + Configures stored procedures to be used for modifying this relationship. + The default conventions for procedure and parameter names will be used. + + The same instance so that multiple calls can be chained. + + + + Configures stored procedures to be used for modifying this relationship. + + + Configuration to override the default conventions for procedure and parameter names. + + The same instance so that multiple calls can be chained. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Used to configure a property of an entity type or complex type. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Used to configure a property with length facets for an entity type or complex type. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Used to configure a primitive property of an entity type or complex type. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the property to be optional. + The database column used to store this property will be nullable. + + The same PrimitivePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be required. + The database column used to store this property will be non-nullable. + + The same PrimitivePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures how values for the property are generated by the database. + + + The pattern used to generate values for the property in the database. + Setting 'null' will cause the default option to be used, which may be 'None', 'Identity', or 'Computed' depending + on the type of the property, its semantics in the model (e.g. primary keys are treated differently), and which + set of conventions are being used. + + The same PrimitivePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be used as an optimistic concurrency token. + + The same PrimitivePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures whether or not the property is to be used as an optimistic concurrency token. + + Value indicating if the property is a concurrency token or not. Specifying 'null' will remove the concurrency token facet from the property. Specifying 'null' will cause the same runtime behavior as specifying 'false'. + The same PrimitivePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the data type of the database column used to store the property. + + Name of the database provider specific data type. + The same PrimitivePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the name of the database column used to store the property. + + The name of the column. + The same PrimitivePropertyConfiguration instance so that multiple calls can be chained. + + + + Sets an annotation in the model for the database column used to store the property. The annotation + value can later be used when processing the column such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Passing a null value clears any annotation with + the given name on the column that had been previously set. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same PrimitivePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the name of the parameter used in stored procedures for this property. + + Name of the parameter. + The same PrimitivePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the order of the database column used to store the property. + This method is also used to specify key ordering when an entity type has a composite key. + + The order that this column should appear in the database table. + The same PrimitivePropertyConfiguration instance so that multiple calls can be chained. + + + + + + + + + + + + + Gets the of the current instance. + + The exact runtime type of the current instance. + + + + Configures the property to allow the maximum length supported by the database provider. + + The same LengthPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to have the specified maximum length. + + The maximum length for the property. Setting 'null' will remove any maximum length restriction from the property and a default length will be used for the database column. + The same LengthPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be fixed length. + Use HasMaxLength to set the length that the property is fixed to. + + The same LengthPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be variable length. + Properties are variable length by default. + + The same LengthPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to allow the maximum length supported by the database provider. + + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to have the specified maximum length. + + The maximum length for the property. Setting 'null' will remove any maximum length restriction from the property. + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be fixed length. + Use HasMaxLength to set the length that the property is fixed to. + + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be variable length. + properties are variable length by default. + + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be optional. + The database column used to store this property will be nullable. + properties are optional by default. + + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be required. + The database column used to store this property will be non-nullable. + + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures how values for the property are generated by the database. + + + The pattern used to generate values for the property in the database. + Setting 'null' will cause the default option to be used, which may be 'None', 'Identity', or 'Computed' depending + on the type of the property, its semantics in the model (e.g. primary keys are treated differently), and which + set of conventions are being used. + + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be used as an optimistic concurrency token. + + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures whether or not the property is to be used as an optimistic concurrency token. + + Value indicating if the property is a concurrency token or not. Specifying 'null' will remove the concurrency token facet from the property. Specifying 'null' will cause the same runtime behavior as specifying 'false'. + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the name of the database column used to store the property. + + The name of the column. + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Sets an annotation in the model for the database column used to store the property. The annotation + value can later be used when processing the column such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Passing a null value clears any annotation with + the given name on the column that had been previously set. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the data type of the database column used to store the property. + + Name of the database provider specific data type. + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the order of the database column used to store the property. + This method is also used to specify key ordering when an entity type has a composite key. + + The order that this column should appear in the database table. + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be a row version in the database. + The actual data type will vary depending on the database provider being used. + Setting the property to be a row version will automatically configure it to be an + optimistic concurrency token. + + The same BinaryPropertyConfiguration instance so that multiple calls can be chained. + + + + Used to configure a property of an entity type or complex type. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the property to be optional. + The database column used to store this property will be nullable. + + The same DateTimePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be required. + The database column used to store this property will be non-nullable. + properties are required by default. + + The same DateTimePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures how values for the property are generated by the database. + + + The pattern used to generate values for the property in the database. + Setting 'null' will cause the default option to be used, which may be 'None', 'Identity', or 'Computed' depending + on the type of the property, its semantics in the model (e.g. primary keys are treated differently), and which + set of conventions are being used. + + The same DateTimePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be used as an optimistic concurrency token. + + The same DateTimePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures whether or not the property is to be used as an optimistic concurrency token. + + Value indicating if the property is a concurrency token or not. Specifying 'null' will remove the concurrency token facet from the property. Specifying 'null' will cause the same runtime behavior as specifying 'false'. + The same DateTimePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the name of the database column used to store the property. + + The name of the column. + The same DateTimePropertyConfiguration instance so that multiple calls can be chained. + + + + Sets an annotation in the model for the database column used to store the property. The annotation + value can later be used when processing the column such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Passing a null value clears any annotation with + the given name on the column that had been previously set. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same DateTimePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the data type of the database column used to store the property. + + Name of the database provider specific data type. + The same DateTimePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the order of the database column used to store the property. + This method is also used to specify key ordering when an entity type has a composite key. + + The order that this column should appear in the database table. + The same DateTimePropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the precision of the property. + If the database provider does not support precision for the data type of the column then the value is ignored. + + Precision of the property. + The same DateTimePropertyConfiguration instance so that multiple calls can be chained. + + + + Used to configure a property of an entity type or complex type. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the property to be optional. + The database column used to store this property will be nullable. + + The same DecimalPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be required. + The database column used to store this property will be non-nullable. + properties are required by default. + + The same DecimalPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures how values for the property are generated by the database. + + + The pattern used to generate values for the property in the database. + Setting 'null' will cause the default option to be used, which may be 'None', 'Identity', or 'Computed' depending + on the type of the property, its semantics in the model (e.g. primary keys are treated differently), and which + set of conventions are being used. + + The same DecimalPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be used as an optimistic concurrency token. + + The same DecimalPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures whether or not the property is to be used as an optimistic concurrency token. + + Value indicating if the property is a concurrency token or not. Specifying 'null' will remove the concurrency token facet from the property. Specifying 'null' will cause the same runtime behavior as specifying 'false'. + The same DecimalPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the name of the database column used to store the property. + + The name of the column. + The same DecimalPropertyConfiguration instance so that multiple calls can be chained. + + + + Sets an annotation in the model for the database column used to store the property. The annotation + value can later be used when processing the column such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Passing a null value clears any annotation with + the given name on the column that had been previously set. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same DecimalPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the data type of the database column used to store the property. + + Name of the database provider specific data type. + The same DecimalPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the order of the database column used to store the property. + This method is also used to specify key ordering when an entity type has a composite key. + + The order that this column should appear in the database table. + The same DecimalPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the precision and scale of the property. + + The precision of the property. + The scale of the property. + The same DecimalPropertyConfiguration instance so that multiple calls can be chained. + + + + Used to configure a property of an entity type or complex type. + This configuration functionality is available via the Code First Fluent API, see . + + + + + Configures the property to allow the maximum length supported by the database provider. + + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to have the specified maximum length. + + The maximum length for the property. Setting 'null' will remove any maximum length restriction from the property and a default length will be used for the database column.. + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be fixed length. + Use HasMaxLength to set the length that the property is fixed to. + + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be variable length. + properties are variable length by default. + + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be optional. + The database column used to store this property will be nullable. + properties are optional by default. + + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be required. + The database column used to store this property will be non-nullable. + + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures how values for the property are generated by the database. + + + The pattern used to generate values for the property in the database. + Setting 'null' will cause the default option to be used, which may be 'None', 'Identity', or 'Computed' depending + on the type of the property, its semantics in the model (e.g. primary keys are treated differently), and which + set of conventions are being used. + + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to be used as an optimistic concurrency token. + + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures whether or not the property is to be used as an optimistic concurrency token. + + Value indicating if the property is a concurrency token or not. Specifying 'null' will remove the concurrency token facet from the property. Specifying 'null' will cause the same runtime behavior as specifying 'false'. + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the name of the database column used to store the property. + + The name of the column. + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Sets an annotation in the model for the database column used to store the property. The annotation + value can later be used when processing the column such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Passing a null value clears any annotation with + the given name on the column that had been previously set. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the data type of the database column used to store the property. + + Name of the database provider specific data type. + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the order of the database column used to store the property. + This method is also used to specify key ordering when an entity type has a composite key. + + The order that this column should appear in the database table. + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures the property to support Unicode string content. + + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Configures whether or not the property supports Unicode string content. + + Value indicating if the property supports Unicode string content or not. Specifying 'null' will remove the Unicode facet from the property. Specifying 'null' will cause the same runtime behavior as specifying 'false'. + The same StringPropertyConfiguration instance so that multiple calls can be chained. + + + + Convention to process instances of found on properties in the model + + + + + + + + Convention to process instances of found on properties in the model. + + + + + + + + Convention to process instances of found on properties in the model. + + + + + + + + Convention to process instances of found on foreign key properties in the model. + + + + + + + + Convention to process instances of found on properties in the model. + + + + + + + + Convention to process instances of found on properties in the model. + + + + + Convention to process instances of found on properties in the model. + + + + + + + + Convention to process instances of found on properties in the model. + + + + + + + + Convention to process instances of found on navigation properties in the model. + + + + + Convention to process instances of found on primitive properties in the model. + + + + + + + + Convention to process instances of found on properties in the model. + + + + + + + + Convention to process instances of found on properties in the model. + + + + + + + + Convention to process instances of found on types in the model. + + + + + + + + Convention to process instances of found on types in the model. + + + + + + + + Convention to process instances of found on types in the model. + + + + + + + + Convention to detect navigation properties to be inverses of each other when only one pair + of navigation properties exists between the related types. + + + + + + + + Convention to configure a type as a complex type if it has no primary key, no mapped base type and no navigation properties. + + + + + + + + Convention to add a cascade delete to the join table from both tables involved in a many to many relationship. + + + + + Convention to ensure an invalid/unsupported mapping is not created when mapping inherited properties + + + + + Convention to set the table name to be a pluralized version of the entity type name. + + + + + + + + Convention to set precision to 18 and scale to 2 for decimal properties. + + + + + Initializes a new instance of with the default precision and scale. + + + + + Initializes a new instance of with the specified precision and scale. + + Precision + Scale + + + + + + + Convention to move primary key properties to appear first. + + + + + + + + Convention to distinguish between optional and required relationships based on CLR nullability of the foreign key property. + + + + + + + + Base class for conventions that discover foreign key properties. + + + + + When overriden returns true if should be part of the foreign key. + + The association type being configured. + The dependent end. + The candidate property on the dependent end. + The principal end entity type. + A key property on the principal end that is a candidate target for the foreign key. + true if dependentProperty should be a part of the foreign key; otherwise, false. + + + + + + + Returns true if the convention supports pairs of entity types that have multiple associations defined between them. + + + + + Convention to process instances of found on navigation properties in the model. + + + + + + + + Convention to detect primary key properties. + Recognized naming patterns in order of precedence are: + 1. 'Id' + 2. [type name]Id + Primary key detection is case insensitive. + + + + + Base class for conventions that discover primary key properties. + + + + + + + + When overriden returns the subset of properties that will be part of the primary key. + + The entity type. + The primitive types of the entities + The properties that should be part of the primary key. + + + + + + + Convention to discover foreign key properties whose names are a combination + of the dependent navigation property name and the principal type primary key property name(s). + + + + + + + + + + + Convention to enable cascade delete for any required relationships. + + + + + + + + Convention to configure the primary key(s) of the dependent entity type as foreign key(s) in a one:one relationship. + + + + + + + + Convention to set the entity set name to be a pluralized version of the entity type name. + + + + + + + + Convention to discover foreign key properties whose names match the principal type primary key property name(s). + + + + + + + + Convention to set a maximum length for properties whose type supports length facets. The default value is 128. + + + + + Initializes a new instance of with the default length. + + + + + Initializes a new instance of with the specified length. + + The maximum lenght of properties. + + + + + + + + + + + + + Convention to set a default maximum length of 4000 for properties whose type supports length facets when SqlCe is the provider. + + + + + Initializes a new instance of with the default length. + + + + + Initializes a new instance of with the specified length. + + The default maximum length for properties. + + + + + + + + + + Convention to configure integer primary keys to be identity. + + + + + + + + Convention to discover foreign key properties whose names are a combination + of the principal type name and the principal type primary key property name(s). + + + + + + + + Allows configuration to be performed for an entity type in a model. + An EntityTypeConfiguration can be obtained via the Entity method on + or a custom type derived from EntityTypeConfiguration + can be registered via the Configurations property on . + + The entity type being configured. + + + + Initializes a new instance of EntityTypeConfiguration + + + + + Configures the primary key property(s) for this entity type. + + The type of the key. + A lambda expression representing the property to be used as the primary key. C#: t => t.Id VB.Net: Function(t) t.Id If the primary key is made up of multiple properties then specify an anonymous type including the properties. C#: t => new { t.Id1, t.Id2 } VB.Net: Function(t) New With { t.Id1, t.Id2 } + The same EntityTypeConfiguration instance so that multiple calls can be chained. + + + + Configures the entity set name to be used for this entity type. + The entity set name can only be configured for the base type in each set. + + The name of the entity set. + The same EntityTypeConfiguration instance so that multiple calls can be chained. + + + + Excludes a property from the model so that it will not be mapped to the database. + + The type of the property to be ignored. + A lambda expression representing the property to be configured. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + The same EntityTypeConfiguration instance so that multiple calls can be chained. + + + + Configures the table name that this entity type is mapped to. + + The name of the table. + The same EntityTypeConfiguration instance so that multiple calls can be chained. + + + + Configures the table name that this entity type is mapped to. + + The name of the table. + The database schema of the table. + The same EntityTypeConfiguration instance so that multiple calls can be chained. + + + + Sets an annotation in the model for the table to which this entity is mapped. The annotation + value can later be used when processing the table such as when creating migrations. + + + It will likely be necessary to register a if the type of + the annotation value is anything other than a string. Passing a null value clears any annotation with + the given name on the column that had been previously set. + + The annotation name, which must be a valid C#/EDM identifier. + The annotation value, which may be a string or some other type that + can be serialized with an . + The same configuration instance so that multiple calls can be chained. + + + + Configures this type to use stored procedures for insert, update and delete. + The default conventions for procedure and parameter names will be used. + + The same configuration instance so that multiple calls can be chained. + + + + Configures this type to use stored procedures for insert, update and delete. + + + Configuration to override the default conventions for procedure and parameter names. + + The same configuration instance so that multiple calls can be chained. + + + + Allows advanced configuration related to how this entity type is mapped to the database schema. + By default, any configuration will also apply to any type derived from this entity type. + Derived types can be configured via the overload of Map that configures a derived type or + by using an EntityTypeConfiguration for the derived type. + The properties of an entity can be split between multiple tables using multiple Map calls. + Calls to Map are additive, subsequent calls will not override configuration already preformed via Map. + + + An action that performs configuration against an + + . + + The same EntityTypeConfiguration instance so that multiple calls can be chained. + + + + Allows advanced configuration related to how a derived entity type is mapped to the database schema. + Calls to Map are additive, subsequent calls will not override configuration already preformed via Map. + + The derived entity type to be configured. + + An action that performs configuration against an + + . + + The same EntityTypeConfiguration instance so that multiple calls can be chained. + + + + Configures an optional relationship from this entity type. + Instances of the entity type will be able to be saved to the database without this relationship being specified. + The foreign key in the database will be nullable. + + The type of the entity at the other end of the relationship. + A lambda expression representing the navigation property for the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures a required relationship from this entity type. + Instances of the entity type will not be able to be saved to the database unless this relationship is specified. + The foreign key in the database will be non-nullable. + + The type of the entity at the other end of the relationship. + A lambda expression representing the navigation property for the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + Configures a many relationship from this entity type. + + The type of the entity at the other end of the relationship. + A lambda expression representing the navigation property for the relationship. C#: t => t.MyProperty VB.Net: Function(t) t.MyProperty + A configuration object that can be used to further configure the relationship. + + + + + + + + + + + + + + + + Exception thrown by during model creation when an invalid model is generated. + + + + + Initializes a new instance of ModelValidationException + + + + + Initializes a new instance of ModelValidationException + + The exception message. + + + + Initializes a new instance of ModelValidationException + + The exception message. + The inner exception. + + + Initializes a new instance of class serialization info and streaming context. + The serialization info. + The streaming context. + + + + Exception thrown from when validating entities fails. + + + + + Initializes a new instance of DbEntityValidationException. + + + + + Initializes a new instance of DbEntityValidationException. + + The exception message. + + + + Initializes a new instance of DbEntityValidationException. + + The exception message. + Validation results. + + + + Initializes a new instance of DbEntityValidationException. + + The exception message. + The inner exception. + + + + Initializes a new instance of DbEntityValidationException. + + The exception message. + Validation results. + The inner exception. + + + + Validation results. + + + + + Represents validation results for single entity. + + + + + Creates an instance of class. + + Entity entry the results applies to. Never null. + + List of instances. Never null. Can be empty meaning the entity is valid. + + + + + Gets an instance of the results applies to. + + + + + Gets validation errors. Never null. + + + + + Gets an indicator if the entity is valid. + + + + + Exception thrown from when an exception is thrown from the validation + code. + + + + + Initializes a new instance of DbUnexpectedValidationException. + + + + + Initializes a new instance of DbUnexpectedValidationException. + + The exception message. + + + + Initializes a new instance of DbUnexpectedValidationException. + + The exception message. + The inner exception. + + + + Initializes a new instance of DbUnexpectedValidationException with the specified serialization info and + context. + + The serialization info. + The streaming context. + + + + Validation error. Can be either entity or property level validation error. + + + + + Creates an instance of . + + Name of the invalid property. Can be null. + Validation error message. Can be null. + + + + Gets name of the invalid property. + + + + + Gets validation error message. + + + + diff --git a/HomeCinema.Data/bin/Debug/FluentValidation.dll b/HomeCinema.Data/bin/Debug/FluentValidation.dll new file mode 100644 index 00000000..7de57518 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/FluentValidation.dll differ diff --git a/HomeCinema.Data/bin/Debug/FluentValidation.pdb b/HomeCinema.Data/bin/Debug/FluentValidation.pdb new file mode 100644 index 00000000..275d1ac5 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/FluentValidation.pdb differ diff --git a/HomeCinema.Data/bin/Debug/FluentValidation.xml b/HomeCinema.Data/bin/Debug/FluentValidation.xml new file mode 100644 index 00000000..9a42560e --- /dev/null +++ b/HomeCinema.Data/bin/Debug/FluentValidation.xml @@ -0,0 +1,2043 @@ + + + + FluentValidation + + + + + Base class for entity validator classes. + + The type of the object being validated + + + + Defines a validator for a particualr type. + + + + + + Defines a validator for a particular type. + + + + + Validates the specified instance + + + A ValidationResult containing any validation failures + + + + Validates the specified instance asynchronously + + + A ValidationResult containing any validation failures + + + + Validates the specified instance. + + A ValidationContext + A ValidationResult object containy any validation failures. + + + + Validates the specified instance asynchronously. + + A ValidationContext + A ValidationResult object containy any validation failures. + + + + Creates a hook to access various meta data properties + + A IValidatorDescriptor object which contains methods to access metadata + + + + Checks to see whether the validator can validate objects of the specified type + + + + + Validates the specified instance. + + The instance to validate + A ValidationResult object containing any validation failures. + + + + Validate the specified instance asynchronously + + The instance to validate + A ValidationResult object containing any validation failures. + + + + Sets the cascade mode for all rules within this validator. + + + + + Validates the specified instance + + The object to validate + A ValidationResult object containing any validation failures + + + + Validates the specified instance asynchronously + + The object to validate + A ValidationResult object containing any validation failures + + + + Validates the specified instance. + + Validation Context + A ValidationResult object containing any validation failures. + + + + Validates the specified instance asynchronously. + + Validation Context + A ValidationResult object containing any validation failures. + + + + Adds a rule to the current validator. + + + + + + Creates a that can be used to obtain metadata about the current validator. + + + + + Defines a validation rule for a specify property. + + + RuleFor(x => x.Surname)... + + The type of property being validated + The expression representing the property to validate + an IRuleBuilder instance on which validators can be defined + + + + Defines a custom validation rule using a lambda expression. + If the validation rule fails, it should return a instance of a ValidationFailure + If the validation rule succeeds, it should return null. + + A lambda that executes custom validation rules. + + + + Defines a custom validation rule using a lambda expression. + If the validation rule fails, it should return an instance of ValidationFailure + If the validation rule succeeds, it should return null. + + A lambda that executes custom validation rules + + + + Defines a custom asynchronous validation rule using a lambda expression. + If the validation rule fails, it should asynchronously return a instance of a ValidationFailure + If the validation rule succeeds, it should return null. + + A lambda that executes custom validation rules. + + + + Defines a custom asynchronous validation rule using a lambda expression. + If the validation rule fails, it should asynchronously return an instance of ValidationFailure + If the validation rule succeeds, it should return null. + + A lambda that executes custom validation rules + + + + Defines a RuleSet that can be used to group together several validators. + + The name of the ruleset. + Action that encapsulates the rules in the ruleset. + + + + Defines a condition that applies to several rules + + The condition that should apply to multiple rules + Action that encapsulates the rules. + + + + + Defiles an inverse condition that applies to several rules + + The condition that should be applied to multiple rules + Action that encapsulates the rules + + + + Returns an enumerator that iterates through the collection of validation rules. + + + A that can be used to iterate through the collection. + + 1 + + + + Sets the cascade mode for all rules within this validator. + + + + + Keeps all the conditional compilation in one place. + + + + + Class that can be used to find all the validators from a collection of types. + + + + + Creates a scanner that works on a sequence of types. + + + + + Finds all the validators in the specified assembly. + + + + + Finds all the validators in the assembly containing the specified type. + + + + + Performs the specified action to all of the assembly scan results. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Result of performing a scan. + + + + + Creates an instance of an AssemblyScanResult. + + + + + Validator interface type, eg IValidator<Foo> + + + + + Concrete type that implements the InterfaceType, eg FooValidator. + + + + + Implementation of IValidatorFactory that looks for ValidatorAttribute instances on the specified type in order to provide the validator instance. + + + + + Gets validators for a particular type. + + + + + Gets the validator for the specified type. + + + + + Gets the validator for the specified type. + + + + + Gets a validator for the appropriate type. + + + + + Gets a validator for the appropriate type. + + + + + Validator attribute to define the class that will describe the Validation rules + + + + + Creates an instance of the ValidatorAttribute allowing a validator type to be specified. + + + + + The type of the validator used to validate the current type. + + + + + Associates an instance of IValidator with the current property rule and is used to validate each item within the collection. + + The validator to use + + + + Rule builder + + + + + + + Rule builder + + + + + + + Associates a validator with this the property for this rule builder. + + The validator to set + + + + + Associates an instance of IValidator with the current property rule. + + The validator to use + + + + Represents an object that is configurable. + + Type of object being configured + Return type + + + + Configures the current object. + + Action to configure the object. + + + + + Extension methods that provide the default set of validators. + + + + + Defines a 'not null' validator on the current rule builder. + Validation will fail if the property is null. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + + + + + Defines a 'not empty' validator on the current rule builder. + Validation will fail if the property is null, an empty or the default value for the type (for example, 0 for integers) + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + + + + + Defines a length validator on the current rule builder, but only for string properties. + Validation will fail if the length of the string is outside of the specifed range. The range is inclusive. + + Type of object being validated + The rule builder on which the validator should be defined + + + + + Defines a length validator on the current rule builder, but only for string properties. + Validation will fail if the length of the string is not equal to the length specified. + + Type of object being validated + The rule builder on which the validator should be defined + + + + + Defines a regular expression validator on the current rule builder, but only for string properties. + Validation will fail if the value returned by the lambda does not match the regular expression. + + Type of object being validated + The rule builder on which the validator should be defined + The regular expression to check the value against. + + + + + Defines a regular expression validator on the current rule builder, but only for string properties. + Validation will fail if the value returned by the lambda does not match the regular expression. + + Type of object being validated + The rule builder on which the validator should be defined + The regular expression to use + + + + + Defines a regular expression validator on the current rule builder, but only for string properties. + Validation will fail if the value returned by the lambda does not match the regular expression. + + Type of object being validated + The rule builder on which the validator should be defined + The regular expression to check the value against. + Regex options + + + + + Defines a regular expression validator on the current rule builder, but only for string properties. + Validation will fail if the value returned by the lambda is not a valid email address. + + Type of object being validated + The rule builder on which the validator should be defined + + + + + Defines a 'not equal' validator on the current rule builder. + Validation will fail if the specified value is equal to the value of the property. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value to compare + Equality comparer to use + + + + + Defines a 'not equal' validator on the current rule builder using a lambda to specify the value. + Validation will fail if the value returned by the lambda is equal to the value of the property. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda expression to provide the comparison value + Equality Comparer to use + + + + + Defines an 'equals' validator on the current rule builder. + Validation will fail if the specified value is not equal to the value of the property. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value to compare + Equality Comparer to use + + + + + Defines an 'equals' validator on the current rule builder using a lambda to specify the comparison value. + Validation will fail if the value returned by the lambda is not equal to the value of the property. + + The type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda expression to provide the comparison value + Equality comparer to use + + + + + Defines a predicate validator on the current rule builder using a lambda expression to specify the predicate. + Validation will fail if the specified lambda returns false. + Validation will succeed if the specifed lambda returns true. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda expression specifying the predicate + + + + + Defines a predicate validator on the current rule builder using a lambda expression to specify the predicate. + Validation will fail if the specified lambda returns false. + Validation will succeed if the specifed lambda returns true. + This overload accepts the object being validated in addition to the property being validated. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda expression specifying the predicate + + + + + Defines a predicate validator on the current rule builder using a lambda expression to specify the predicate. + Validation will fail if the specified lambda returns false. + Validation will succeed if the specifed lambda returns true. + This overload accepts the object being validated in addition to the property being validated. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda expression specifying the predicate + + + + + Defines an asynchronous predicate validator on the current rule builder using a lambda expression to specify the predicate. + Validation will fail if the specified lambda returns false. + Validation will succeed if the specifed lambda returns true. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda expression specifying the predicate + + + + + Defines an asynchronous predicate validator on the current rule builder using a lambda expression to specify the predicate. + Validation will fail if the specified lambda returns false. + Validation will succeed if the specifed lambda returns true. + This overload accepts the object being validated in addition to the property being validated. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda expression specifying the predicate + + + + + Defines an asynchronous predicate validator on the current rule builder using a lambda expression to specify the predicate. + Validation will fail if the specified lambda returns false. + Validation will succeed if the specifed lambda returns true. + This overload accepts the object being validated in addition to the property being validated. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda expression specifying the predicate + + + + + Defines a 'less than' validator on the current rule builder. + The validation will succeed if the property value is less than the specified value. + The validation will fail if the property value is greater than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than' validator on the current rule builder. + The validation will succeed if the property value is less than the specified value. + The validation will fail if the property value is greater than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than or equal' validator on the current rule builder. + The validation will succeed if the property value is less than or equal to the specified value. + The validation will fail if the property value is greater than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than or equal' validator on the current rule builder. + The validation will succeed if the property value is less than or equal to the specified value. + The validation will fail if the property value is greater than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'greater than' validator on the current rule builder. + The validation will succeed if the property value is greater than the specified value. + The validation will fail if the property value is less than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'greater than' validator on the current rule builder. + The validation will succeed if the property value is greater than the specified value. + The validation will fail if the property value is less than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'greater than or equal' validator on the current rule builder. + The validation will succeed if the property value is greater than or equal the specified value. + The validation will fail if the property value is less than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'greater than or equal' validator on the current rule builder. + The validation will succeed if the property value is greater than or equal the specified value. + The validation will fail if the property value is less than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is less than the specified value. + The validation will fail if the property value is greater than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda that should return the value being compared + + + + + Defines a 'less than' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is less than the specified value. + The validation will fail if the property value is greater than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda that should return the value being compared + + + + + Defines a 'less than' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is less than the specified value. + The validation will fail if the property value is greater than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda that should return the value being compared + + + + + Defines a 'less than' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is less than the specified value. + The validation will fail if the property value is greater than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + A lambda that should return the value being compared + + + + + Defines a 'less than or equal' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is less than or equal to the specified value. + The validation will fail if the property value is greater than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than or equal' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is less than or equal to the specified value. + The validation will fail if the property value is greater than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than or equal' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is less than or equal to the specified value. + The validation will fail if the property value is greater than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than or equal' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is less than or equal to the specified value. + The validation will fail if the property value is greater than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is greater than the specified value. + The validation will fail if the property value is less than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is greater than the specified value. + The validation will fail if the property value is less than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is greater than the specified value. + The validation will fail if the property value is less than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'less than' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is greater than the specified value. + The validation will fail if the property value is less than or equal to the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'greater than' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is greater than or equal the specified value. + The validation will fail if the property value is less than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'greater than' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is greater than or equal the specified value. + The validation will fail if the property value is less than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'greater than or equal to' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is greater than or equal the specified value. + The validation will fail if the property value is less than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Defines a 'greater than or equal to' validator on the current rule builder using a lambda expression. + The validation will succeed if the property value is greater than or equal the specified value. + The validation will fail if the property value is less than the specified value. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The value being compared + + + + + Validates certain properties of the specified instance. + + The current validator + The object to validate + Expressions to specify the properties to validate + A ValidationResult object containing any validation failures + + + + Validates certain properties of the specified instance. + + The object to validate + The names of the properties to validate. + A ValidationResult object containing any validation failures. + + + + Validates certain properties of the specified instance asynchronously. + + The current validator + The object to validate + Expressions to specify the properties to validate + A ValidationResult object containing any validation failures + + + + Validates certain properties of the specified instance asynchronously. + + The object to validate + The names of the properties to validate. + A ValidationResult object containing any validation failures. + + + + Performs validation and then throws an exception if validation fails. + + + + + Performs validation asynchronously and then throws an exception if validation fails. + + + + + Defines an 'inclusive between' validator on the current rule builder, but only for properties of types that implement IComparable. + Validation will fail if the value of the property is outside of the specifed range. The range is inclusive. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The lowest allowed value + The highest allowed value + + + + + Defines an 'inclusive between' validator on the current rule builder, but only for properties of types that implement IComparable. + Validation will fail if the value of the property is outside of the specifed range. The range is inclusive. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The lowest allowed value + The highest allowed value + + + + + Defines an 'exclusive between' validator on the current rule builder, but only for properties of types that implement IComparable. + Validation will fail if the value of the property is outside of the specifed range. The range is exclusive. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The lowest allowed value + The highest allowed value + + + + + Defines an 'exclusive between' validator on the current rule builder, but only for properties of types that implement IComparable. + Validation will fail if the value of the property is outside of the specifed range. The range is exclusive. + + Type of object being validated + Type of property being validated + The rule builder on which the validator should be defined + The lowest allowed value + The highest allowed value + + + + + Defines a credit card validator for the current rule builder that ensures that the specified string is a valid credit card number. + + + + + Default options that can be used to configure a validator. + + + + + Specifies the cascade mode for failures. + If set to 'Stop' then execution of the rule will stop once the first validator in the chain fails. + If set to 'Continue' then all validators in the chain will execute regardless of failures. + + + + + Specifies a custom action to be invoked when the validator fails. + + + + + + + + + + Specifies a custom error message to use if validation fails. + + The current rule + The error message to use + + + + + Specifies a custom error message to use if validation fails. + + The current rule + The error message to use + Additional arguments to be specified when formatting the custom error message. + + + + + Specifies a custom error message to use if validation fails. + + The current rule + The error message to use + Additional property values to be included when formatting the custom error message. + + + + + Specifies a custom error message to use if validation fails. + + The current rule + The error message to use + Additional property values to use when formatting the custom error message. + + + + + Specifies a custom error message resource to use when validation fails. + + The current rule + The resource to use as an expression, eg () => Messages.MyResource + + + + + Specifies a custom error message resource to use when validation fails. + + The current rule + The resource to use as an expression, eg () => Messages.MyResource + Custom message format args + + + + + Specifies a custom error message resource to use when validation fails. + + The current rule + The resource to use as an expression, eg () => Messages.MyResource + Custom message format args + + + + + Specifies a custom error message resource to use when validation fails. + + The current rule + The resource to use as an expression, eg () => Messages.MyResource + The resource accessor builder to use. + + + + + Specifies a condition limiting when the validator should run. + The validator will only be executed if the result of the lambda returns true. + + The current rule + A lambda expression that specifies a condition for when the validator should run + Whether the condition should be applied to the current rule or all rules in the chain + + + + + Specifies a condition limiting when the validator should not run. + The validator will only be executed if the result of the lambda returns false. + + The current rule + A lambda expression that specifies a condition for when the validator should not run + Whether the condition should be applied to the current rule or all rules in the chain + + + + + Triggers an action when the rule passes. Typically used to configure dependent rules. This applies to all preceding rules in the chain. + + The current rule + An action to be invoked if the rule is valid + + + + + Specifies a custom property name to use within the error message. + + The current rule + The property name to use + + + + + Specifies a localized name for the error message. + + The current rule + The resource to use as an expression, eg () => Messages.MyResource + Resource accessor builder to use + + + + Overrides the name of the property associated with this rule. + NOTE: This is a considered to be an advanced feature. 99% of the time that you use this, you actually meant to use WithName. + + The current rule + The property name to use + + + + + Overrides the name of the property associated with this rule. + NOTE: This is a considered to be an advanced feature. 99% of the time that you use this, you actually meant to use WithName. + + The current rule + The property name to use + + + + + Specifies custom state that should be stored alongside the validation message when validation fails for this rule. + + + + + + + + + + Validator implementation that allows rules to be defined without inheriting from AbstractValidator. + + + + public class Customer { + public int Id { get; set; } + public string Name { get; set; } + + public static readonly InlineValidator<Customer> Validator = new InlineValidator<Customer> { + v => v.RuleFor(x => x.Name).NotNull(), + v => v.RuleFor(x => x.Id).NotEqual(0), + } + } + + + + + + + Allows configuration of the validator. + + + + + Delegate that specifies configuring an InlineValidator. + + + + + Defines a rule associated with a property. + + + + + Defines a rule associated with a property which can have multiple validators. + + + + + Performs validation using a validation context and returns a collection of Validation Failures. + + Validation Context + A collection of validation failures + + + + Performs validation using a validation context and returns a collection of Validation Failures asynchronoulsy. + + Validation Context + A collection of validation failures + + + + The validators that are grouped under this rule. + + + + + Name of the rule-set to which this rule belongs. + + + + + Creates a new property rule. + + Property + Function to get the property value + Lambda expression used to create the rule + Function to get the cascade mode. + Type to validate + Container type that owns the property + + + + Creates a new property rule from a lambda expression. + + + + + Creates a new property rule from a lambda expression. + + + + + Adds a validator to the rule. + + + + + Replaces a validator in this rule. Used to wrap validators. + + + + + Remove a validator in this rule. + + + + + Clear all validators from this rule. + + + + + Display name for the property. + + + + + Performs validation using a validation context and returns a collection of Validation Failures. + + Validation Context + A collection of validation failures + + + + Performs asynchronous validation using a validation context and returns a collection of Validation Failures. + + Validation Context + A collection of validation failures + + + + Invokes a property validator using the specified validation context. + + + + + Property associated with this rule. + + + + + Function that can be invoked to retrieve the value of the property. + + + + + Expression that was used to create the rule. + + + + + String source that can be used to retrieve the display name (if null, falls back to the property name) + + + + + Rule set that this rule belongs to (if specified) + + + + + Function that will be invoked if any of the validators associated with this rule fail. + + + + + The current validator being configured by this rule. + + + + + Type of the property being validated + + + + + Cascade mode for this rule. + + + + + Validators associated with this rule. + + + + + Returns the property name for the property being validated. + Returns null if it is not a property being validated (eg a method call) + + + + + Allows custom creation of an error message + + + + + Dependent rules + + + + + Creates a new property rule from a lambda expression. + + + + + Tries to compare the two objects. + + The resulting comparison value. + True if all went well, otherwise False. + + + + Tries to do a proper comparison but may fail. + First it tries the default comparison, if this fails, it will see + if the values are fractions. If they are, then it does a double + comparison, otherwise it does a long comparison. + + + + + Tries to compare the two objects, but will throw an exception if it fails. + + True on success, otherwise False. + + + + Tries to compare the two objects, but will throw an exception if it fails. + + True on success, otherwise False. + + + + Default validator selector that will execute all rules that do not belong to a RuleSet. + + + + + Determines whether or not a rule should execute. + + + + + Determines whether or not a rule should execute. + + The rule + Property path (eg Customer.Address.Line1) + Contextual information + Whether or not the validator can execute. + + + + Determines whether or not a rule should execute. + + The rule + Property path (eg Customer.Address.Line1) + Contextual information + Whether or not the validator can execute. + + + + Custom IValidationRule for performing custom logic. + + + + + + Creates a new DelegateValidator using the specified function to perform validation. + + + + + Creates a new DelegateValidator using the specified function to perform validation. + + + + + Creates a new DelegateValidator using the specified async function to perform validation. + + + + + Creates a new DelegateValidator using the specified async function to perform validation. + + + + + Performs validation using a validation context and returns a collection of Validation Failures. + + Validation Context + A collection of validation failures + + + + Performs validation asynchronously using a validation context and returns a collection of Validation Failures. + + Validation Context + A collection of validation failures + + + + Performs validation using a validation context and returns a collection of Validation Failures. + + Validation Context + A collection of validation failures + + + + When overloaded performs validation asynchronously using a validation context and returns a collection of Validation Failures. + + Validation Context + A collection of validation failures + + + + Rule set to which this rule belongs. + + + + + The validators that are grouped under this rule. + + + + + Useful extensions + + + + + Gets a MemberInfo from a member expression. + + + + + Gets a MemberInfo from a member expression. + + + + + Splits pascal case, so "FooBar" would become "Foo Bar" + + + + + Helper method to construct a constant expression from a constant. + + Type of object being validated + Type of property being validated + The value being compared + + + + + Instancace cache. + TODO: This isn't actually completely thread safe. It would be much better to use ConcurrentDictionary, but this isn't available in Silverlight/WP7. + + + + + Gets or creates an instance using Activator.CreateInstance + + The type to instantiate + The instantiated object + + + + Gets or creates an instance using a custom factory + + The type to instantiate + The custom factory + The instantiated object + + + + Selects validators that belong to the specified rulesets. + + + + + Creates a new instance of the RulesetValidatorSelector. + + + + + Determines whether or not a rule should execute. + + The rule + Property path (eg Customer.Address.Line1) + Contextual information + Whether or not the validator can execute. + + + + Selects validators that are associated with a particular property. + + + + + Creates a new instance of MemberNameValidatorSelector. + + + + + Determines whether or not a rule should execute. + + The rule + Property path (eg Customer.Address.Line1) + Contextual information + Whether or not the validator can execute. + + + + Creates a MemberNameValidatorSelector from a collection of expressions. + + + + + Assists in the construction of validation messages. + + + + + Default Property Name placeholder. + + + + + Adds a value for a validation message placeholder. + + + + + + + + Appends a property name to the message. + + The name of the property + + + + + Adds additional arguments to the message for use with standard string placeholders. + + Additional arguments + + + + + Constructs the final message from the specified template. + + Message template + The message with placeholders replaced with their appropriate values + + + + Represents a chain of properties + + + + + Creates a new PropertyChain. + + + + + Creates a new PropertyChain based on another. + + + + + Adds a MemberInfo instance to the chain + + Member to add + + + + Adds a property name to the chain + + Name of the property to add + + + + Adds an indexer to the property chain. For example, if the following chain has been constructed: + Parent.Child + then calling AddIndexer(0) would convert this to: + Parent.Child[0] + + + + + + Creates a string representation of a property chain. + + + + + Checks if the current chain is the child of another chain. + For example, if chain1 were for "Parent.Child" and chain2 were for "Parent.Child.GrandChild" then + chain2.IsChildChainOf(chain1) would be true. + + The parent chain to compare + True if the current chain is the child of the other chain, otherwise false + + + + Builds a property path. + + + + + Replace the first validator of this type and remove all the others. + + + + + Remove all validators of the specifed type. + + + + + Remove all validators for the given property. + + + + + Provides error message templates + + + + + Construct the error message template + + Error message template + + + + The name of the resource if localized. + + + + + The type of the resource provider if localized. + + + + + Builds a delegate for retrieving a localised resource from a resource type and property name. + + + + + Gets a function that can be used to retrieve a message from a resource type and resource name. + + + + + Builds a delegate for retrieving a localised resource from a resource type and property name. + + + + + Builds a function used to retrieve the resource. + + + + + Gets the PropertyInfo for a resource. + ResourceType and ResourceName are ref parameters to allow derived types + to replace the type/name of the resource before the delegate is constructed. + + + + + Implemenetation of IResourceAccessorBuilder that can fall back to the default resource provider. + + + + + Gets the PropertyInfo for a resource. + ResourceType and ResourceName are ref parameters to allow derived types + to replace the type/name of the resource before the delegate is constructed. + + + + + Represents a localized string. + + + + + Creates a new instance of the LocalizedErrorMessageSource class using the specified resource name and resource type. + + The resource type + The resource name + Strategy used to construct the resource accessor + + + + Creates an IErrorMessageSource from an expression: () => MyResources.SomeResourceName + + The expression + Strategy used to construct the resource accessor + Error message source + + + + Construct the error message template + + Error message template + + + + The name of the resource if localized. + + + + + The type of the resource provider if localized. + + + + + Represents a static string. + + + + + Creates a new StringErrorMessageSource using the specified error message as the error template. + + The error message template. + + + + Construct the error message template + + Error message template + + + + The name of the resource if localized. + + + + + The type of the resource provider if localized. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to '{PropertyName}' is not a valid credit card number.. + + + + + Looks up a localized string similar to '{PropertyName}' is not a valid email address.. + + + + + Looks up a localized string similar to '{PropertyName}' should be equal to '{ComparisonValue}'.. + + + + + Looks up a localized string similar to '{PropertyName}' must be {MaxLength} characters in length. You entered {TotalLength} characters.. + + + + + Looks up a localized string similar to '{PropertyName}' must be between {From} and {To} (exclusive). You entered {Value}.. + + + + + Looks up a localized string similar to '{PropertyName}' must be greater than '{ComparisonValue}'.. + + + + + Looks up a localized string similar to '{PropertyName}' must be greater than or equal to '{ComparisonValue}'.. + + + + + Looks up a localized string similar to '{PropertyName}' must be between {From} and {To}. You entered {Value}.. + + + + + Looks up a localized string similar to '{PropertyName}' must be between {MinLength} and {MaxLength} characters. You entered {TotalLength} characters.. + + + + + Looks up a localized string similar to '{PropertyName}' must be less than '{ComparisonValue}'.. + + + + + Looks up a localized string similar to '{PropertyName}' must be less than or equal to '{ComparisonValue}'.. + + + + + Looks up a localized string similar to '{PropertyName}' should not be empty.. + + + + + Looks up a localized string similar to '{PropertyName}' should not be equal to '{ComparisonValue}'.. + + + + + Looks up a localized string similar to '{PropertyName}' must not be empty.. + + + + + Looks up a localized string similar to The specified condition was not met for '{PropertyName}'.. + + + + + Looks up a localized string similar to '{PropertyName}' is not in the correct format.. + + + + + Looks up a localized string similar to '{PropertyName}' may not be more than {expectedPrecision} digits in total, with allowance for {expectedScale} decimals. {digits} digits and {actualScale} decimals were found.. + + + + + Rule builder that starts the chain + + + + + + + Builds a validation rule and constructs a validator. + + Type of object being validated + Type of property being validated + + + + Creates a new instance of the RuleBuilder class. + + + + + Sets the validator associated with the rule. + + The validator to set + + + + + Sets the validator associated with the rule. Use with complex properties where an IValidator instance is already declared for the property type. + + The validator to set + + + + The rule being created by this RuleBuilder. + + + + + Provides metadata about a validator. + + + + + Gets the name display name for a property. + + + + + Gets a collection of validators grouped by property. + + + + + Gets validators for a particular property. + + + + + Gets rules for a property. + + + + + Specifies how rules should cascade when one fails. + + + + + When a rule fails, execution continues to the next rule. + + + + + When a rule fails, validation is stopped and all other rules in the chain will not be executed. + + + + + Specifies where a When/Unless condition should be applied + + + + + Applies the condition to all validators declared so far in the chain. + + + + + Applies the condition to the current validator only. + + + + + Used for providing metadata about a validator. + + + + + A custom property validator. + This interface should not be implemented directly in your code as it is subject to change. + Please inherit from PropertyValidator instead. + + + + + Custom message arguments. + Arg 1: Instance being validated + Arg 2: Property value + + + + + Creates an error validation result for this validator. + + The validator context + Returns an error validation result. + + + + Ensures that the property value is a valid credit card number. + + + + + Creates a new validation failure. + + + + + Creates a new ValidationFailure. + + + + + Creates a textual representation of the failure. + + + + + The name of the property. + + + + + The error message + + + + + The property value that caused the failure. + + + + + Custom state associated with the failure. + + + + + Gets or sets the error code. + + + + + Gets or sets the formatted message arguments. + These are values for custom formatted message in validator resource files + Same formatted message can be reused in UI and with same number of format placeholders + Like "Value {0} that you entered should be {1}" + + + + + Gets or sets the formatted message placeholder values. + Similar placeholders are defined in fluent validation library (check documentation) + + + + + Allows a decimal to be validated for scale and precision. + Scale would be the number of digits to the right of the decimal point. + Precision would be the number of digits. + + It can be configured to use the effective scale and precision + (i.e. ignore trailing zeros) if required. + + 123.4500 has an scale of 4 and a precision of 7, but an effective scale + and precision of 2 and 5 respectively. + + + + diff --git a/HomeCinema.Data/bin/Debug/HomeCinema.Data.dll b/HomeCinema.Data/bin/Debug/HomeCinema.Data.dll new file mode 100644 index 00000000..ec96c820 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/HomeCinema.Data.dll differ diff --git a/HomeCinema.Data/bin/Debug/HomeCinema.Data.dll.config b/HomeCinema.Data/bin/Debug/HomeCinema.Data.dll.config new file mode 100644 index 00000000..9d19cce7 --- /dev/null +++ b/HomeCinema.Data/bin/Debug/HomeCinema.Data.dll.config @@ -0,0 +1,20 @@ + + + + +
+ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/HomeCinema.Data/bin/Debug/HomeCinema.Data.pdb b/HomeCinema.Data/bin/Debug/HomeCinema.Data.pdb new file mode 100644 index 00000000..94da27b5 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/HomeCinema.Data.pdb differ diff --git a/HomeCinema.Data/bin/Debug/HomeCinema.Entities.dll b/HomeCinema.Data/bin/Debug/HomeCinema.Entities.dll new file mode 100644 index 00000000..866885e2 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/HomeCinema.Entities.dll differ diff --git a/HomeCinema.Data/bin/Debug/HomeCinema.Entities.pdb b/HomeCinema.Data/bin/Debug/HomeCinema.Entities.pdb new file mode 100644 index 00000000..1b5b190d Binary files /dev/null and b/HomeCinema.Data/bin/Debug/HomeCinema.Entities.pdb differ diff --git a/HomeCinema.Data/bin/Debug/MockData.dll b/HomeCinema.Data/bin/Debug/MockData.dll new file mode 100644 index 00000000..c7a06d2a Binary files /dev/null and b/HomeCinema.Data/bin/Debug/MockData.dll differ diff --git a/HomeCinema.Data/bin/Debug/da/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/da/FluentValidation.resources.dll new file mode 100644 index 00000000..3c2ec092 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/da/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/de/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/de/FluentValidation.resources.dll new file mode 100644 index 00000000..a20a029a Binary files /dev/null and b/HomeCinema.Data/bin/Debug/de/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/es/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/es/FluentValidation.resources.dll new file mode 100644 index 00000000..ccbd2803 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/es/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/fi/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/fi/FluentValidation.resources.dll new file mode 100644 index 00000000..3cef47e6 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/fi/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/fr/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/fr/FluentValidation.resources.dll new file mode 100644 index 00000000..4f5aaa9f Binary files /dev/null and b/HomeCinema.Data/bin/Debug/fr/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/it/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/it/FluentValidation.resources.dll new file mode 100644 index 00000000..de36d467 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/it/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/ko/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/ko/FluentValidation.resources.dll new file mode 100644 index 00000000..cf6a946d Binary files /dev/null and b/HomeCinema.Data/bin/Debug/ko/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/mk/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/mk/FluentValidation.resources.dll new file mode 100644 index 00000000..b4e572fb Binary files /dev/null and b/HomeCinema.Data/bin/Debug/mk/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/nl/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/nl/FluentValidation.resources.dll new file mode 100644 index 00000000..8225b453 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/nl/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/pl/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/pl/FluentValidation.resources.dll new file mode 100644 index 00000000..3460bf12 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/pl/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/pt/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/pt/FluentValidation.resources.dll new file mode 100644 index 00000000..313f3f93 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/pt/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/ru/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/ru/FluentValidation.resources.dll new file mode 100644 index 00000000..ce98413a Binary files /dev/null and b/HomeCinema.Data/bin/Debug/ru/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/sv/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/sv/FluentValidation.resources.dll new file mode 100644 index 00000000..0cd45735 Binary files /dev/null and b/HomeCinema.Data/bin/Debug/sv/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/bin/Debug/tr/FluentValidation.resources.dll b/HomeCinema.Data/bin/Debug/tr/FluentValidation.resources.dll new file mode 100644 index 00000000..9e5a317b Binary files /dev/null and b/HomeCinema.Data/bin/Debug/tr/FluentValidation.resources.dll differ diff --git a/HomeCinema.Data/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/HomeCinema.Data/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 00000000..5fb1dc93 Binary files /dev/null and b/HomeCinema.Data/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/HomeCinema.Data/obj/Debug/HomeCinema.Data.Migrations.initial.resources b/HomeCinema.Data/obj/Debug/HomeCinema.Data.Migrations.initial.resources new file mode 100644 index 00000000..6924e1c3 Binary files /dev/null and b/HomeCinema.Data/obj/Debug/HomeCinema.Data.Migrations.initial.resources differ diff --git a/HomeCinema.Data/obj/Debug/HomeCinema.Data.Migrations.logAuthSetting.resources b/HomeCinema.Data/obj/Debug/HomeCinema.Data.Migrations.logAuthSetting.resources new file mode 100644 index 00000000..886a43cf Binary files /dev/null and b/HomeCinema.Data/obj/Debug/HomeCinema.Data.Migrations.logAuthSetting.resources differ diff --git a/HomeCinema.Data/obj/Debug/HomeCinema.Data.csproj.FileListAbsolute.txt b/HomeCinema.Data/obj/Debug/HomeCinema.Data.csproj.FileListAbsolute.txt new file mode 100644 index 00000000..69b7e120 --- /dev/null +++ b/HomeCinema.Data/obj/Debug/HomeCinema.Data.csproj.FileListAbsolute.txt @@ -0,0 +1,33 @@ +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\HomeCinema.Data.dll.config +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\HomeCinema.Data.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\HomeCinema.Data.pdb +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\EntityFramework.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\EntityFramework.SqlServer.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\FluentValidation.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\HomeCinema.Entities.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\MockData.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\HomeCinema.Entities.pdb +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\EntityFramework.xml +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\EntityFramework.SqlServer.xml +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\FluentValidation.pdb +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\FluentValidation.xml +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\da\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\de\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\es\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\fi\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\fr\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\it\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\ko\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\mk\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\nl\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\pl\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\pt\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\ru\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\sv\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\bin\Debug\tr\FluentValidation.resources.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\obj\Debug\HomeCinema.Data.csprojResolveAssemblyReference.cache +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\obj\Debug\HomeCinema.Data.Migrations.initial.resources +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\obj\Debug\HomeCinema.Data.Migrations.logAuthSetting.resources +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\obj\Debug\HomeCinema.Data.csproj.GenerateResource.Cache +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\obj\Debug\HomeCinema.Data.dll +C:\Users\shank\Documents\Visual Studio 2015\Projects\spa-webapi-angularjs-master\HomeCinema.Data\obj\Debug\HomeCinema.Data.pdb diff --git a/HomeCinema.Data/obj/Debug/HomeCinema.Data.csproj.GenerateResource.Cache b/HomeCinema.Data/obj/Debug/HomeCinema.Data.csproj.GenerateResource.Cache new file mode 100644 index 00000000..dd0f7676 Binary files /dev/null and b/HomeCinema.Data/obj/Debug/HomeCinema.Data.csproj.GenerateResource.Cache differ diff --git a/HomeCinema.Data/obj/Debug/HomeCinema.Data.csprojResolveAssemblyReference.cache b/HomeCinema.Data/obj/Debug/HomeCinema.Data.csprojResolveAssemblyReference.cache new file mode 100644 index 00000000..d0c627be Binary files /dev/null and b/HomeCinema.Data/obj/Debug/HomeCinema.Data.csprojResolveAssemblyReference.cache differ diff --git a/HomeCinema.Data/obj/Debug/HomeCinema.Data.dll b/HomeCinema.Data/obj/Debug/HomeCinema.Data.dll new file mode 100644 index 00000000..ec96c820 Binary files /dev/null and b/HomeCinema.Data/obj/Debug/HomeCinema.Data.dll differ diff --git a/HomeCinema.Data/obj/Debug/HomeCinema.Data.pdb b/HomeCinema.Data/obj/Debug/HomeCinema.Data.pdb new file mode 100644 index 00000000..94da27b5 Binary files /dev/null and b/HomeCinema.Data/obj/Debug/HomeCinema.Data.pdb differ