public void Does_required_foreign_key_SQL_Server_binary_mapping() { var property = CreateEntityType().AddProperty("MyProp", typeof(byte[])); var fkProperty = property.DeclaringEntityType.AddProperty("FK", typeof(byte[])); var pk = property.DeclaringEntityType.SetPrimaryKey(property); property.DeclaringEntityType.AddForeignKey(fkProperty, pk, property.DeclaringEntityType); fkProperty.IsNullable = false; var typeMapping = new SqlServerTypeMapper().GetMapping(fkProperty); Assert.Equal(DbType.Binary, typeMapping.StoreType); Assert.Equal("varbinary(900)", typeMapping.DefaultTypeName); Assert.Equal(8000, typeMapping.CreateParameter(new TestCommand(), "Name", new byte[3]).Size); }
public void Does_required_foreign_key_SQL_Server_string_mapping() { var property = CreateEntityType().AddProperty("MyProp", typeof(string)); var fkProperty = property.DeclaringEntityType.AddProperty("FK", typeof(string)); var pk = property.DeclaringEntityType.SetPrimaryKey(property); property.DeclaringEntityType.AddForeignKey(fkProperty, pk, property.DeclaringEntityType); fkProperty.IsNullable = false; var typeMapping = new SqlServerTypeMapper().GetMapping(fkProperty); Assert.Null(typeMapping.StoreType); Assert.Equal("nvarchar(450)", typeMapping.DefaultTypeName); Assert.Equal(4000, typeMapping.CreateParameter(new TestCommand(), "Name", "Value").Size); }