mirror of
				https://github.com/nsnail/FreeSql.git
				synced 2025-11-04 01:05:27 +08:00 
			
		
		
		
	add PgArrayToMany IncludeMany test #1147
This commit is contained in:
		@@ -795,5 +795,14 @@
 | 
				
			|||||||
            <param name="that"></param>
 | 
					            <param name="that"></param>
 | 
				
			||||||
            <returns></returns>
 | 
					            <returns></returns>
 | 
				
			||||||
        </member>
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="M:Microsoft.Extensions.DependencyInjection.FreeSqlRepositoryDependencyInjection.AddFreeRepository(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action{FreeSql.FluentDataFilter},System.Reflection.Assembly[])">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            批量注入 Repository,可以参考代码自行调整
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					            <param name="services"></param>
 | 
				
			||||||
 | 
					            <param name="globalDataFilter"></param>
 | 
				
			||||||
 | 
					            <param name="assemblies"></param>
 | 
				
			||||||
 | 
					            <returns></returns>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
    </members>
 | 
					    </members>
 | 
				
			||||||
</doc>
 | 
					</doc>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -13,7 +13,8 @@ namespace FreeSql.Tests.PostgreSQL
 | 
				
			|||||||
        [Table(Name = "pgarray_tomany_user_lazyloading")]
 | 
					        [Table(Name = "pgarray_tomany_user_lazyloading")]
 | 
				
			||||||
        public class UserLazyLoading
 | 
					        public class UserLazyLoading
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            public int Id { get; set; }
 | 
					            [Column(IsPrimary = true)]
 | 
				
			||||||
 | 
					            public int UserId { get; set; }
 | 
				
			||||||
            public int[] RoleIds { get; set; }
 | 
					            public int[] RoleIds { get; set; }
 | 
				
			||||||
            public string UserName { get; set; }
 | 
					            public string UserName { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -24,7 +25,8 @@ namespace FreeSql.Tests.PostgreSQL
 | 
				
			|||||||
        [Table(Name = "pgarray_tomany_role_lazyloading")]
 | 
					        [Table(Name = "pgarray_tomany_role_lazyloading")]
 | 
				
			||||||
        public class RoleLazyLoading
 | 
					        public class RoleLazyLoading
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            public int Id { get; set; }
 | 
					            [Column(IsPrimary = true)]
 | 
				
			||||||
 | 
					            public int RoleId { get; set; }
 | 
				
			||||||
            public string RoleName { get; set; }
 | 
					            public string RoleName { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            [Navigate(nameof(UserLazyLoading.RoleIds))]
 | 
					            [Navigate(nameof(UserLazyLoading.RoleIds))]
 | 
				
			||||||
@@ -40,80 +42,129 @@ namespace FreeSql.Tests.PostgreSQL
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            var roles = new[]
 | 
					            var roles = new[]
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                new RoleLazyLoading { Id = 1, RoleName = "role1" },
 | 
					                new RoleLazyLoading { RoleId = 1, RoleName = "role1" },
 | 
				
			||||||
                new RoleLazyLoading { Id = 2, RoleName = "role2" },
 | 
					                new RoleLazyLoading { RoleId = 2, RoleName = "role2" },
 | 
				
			||||||
                new RoleLazyLoading { Id = 3, RoleName = "role3" }
 | 
					                new RoleLazyLoading { RoleId = 3, RoleName = "role3" }
 | 
				
			||||||
            };
 | 
					            };
 | 
				
			||||||
            Assert.Equal(3, fsql.Insert(roles).ExecuteAffrows());
 | 
					            Assert.Equal(3, fsql.Insert(roles).ExecuteAffrows());
 | 
				
			||||||
            var users = new[]
 | 
					            var users = new[]
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                new UserLazyLoading { Id = 11, RoleIds = new [] { 1,2 }, UserName = "user1" },
 | 
					                new UserLazyLoading { UserId = 11, RoleIds = new [] { 1,2 }, UserName = "user1" },
 | 
				
			||||||
                new UserLazyLoading { Id = 12, RoleIds = new [] { 1,2,3 }, UserName = "user2" },
 | 
					                new UserLazyLoading { UserId = 12, RoleIds = new [] { 1,2,3 }, UserName = "user2" },
 | 
				
			||||||
                new UserLazyLoading { Id = 13, RoleIds = new [] { 1,3 }, UserName = "user3" },
 | 
					                new UserLazyLoading { UserId = 13, RoleIds = new [] { 1,3 }, UserName = "user3" },
 | 
				
			||||||
                new UserLazyLoading { Id = 14, RoleIds = new [] { 3,2,1 }, UserName = "user4" },
 | 
					                new UserLazyLoading { UserId = 14, RoleIds = new [] { 3,2,1 }, UserName = "user4" },
 | 
				
			||||||
                new UserLazyLoading { Id = 15, RoleIds = null, UserName = "user5" },
 | 
					                new UserLazyLoading { UserId = 15, RoleIds = null, UserName = "user5" },
 | 
				
			||||||
                new UserLazyLoading { Id = 16, RoleIds = new int[0], UserName = "user6" },
 | 
					                new UserLazyLoading { UserId = 16, RoleIds = new int[0], UserName = "user6" },
 | 
				
			||||||
            };
 | 
					            };
 | 
				
			||||||
            Assert.Equal(6, fsql.Insert(users).ExecuteAffrows());
 | 
					            Assert.Equal(6, fsql.Insert(users).ExecuteAffrows());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            var role = fsql.Select<RoleLazyLoading>().Where(a => a.Id == 1).First();
 | 
					            var roles3 = fsql.Select<RoleLazyLoading>().IncludeMany(a => a.Users).ToList();
 | 
				
			||||||
            Assert.IsNotType<RoleLazyLoading>(role);
 | 
					            Assert.Equal(3, roles3.Count);
 | 
				
			||||||
 | 
					            var roles2 = roles3;
 | 
				
			||||||
 | 
					            Assert.Equal(1, roles2[0].RoleId);
 | 
				
			||||||
 | 
					            Assert.Equal("role1", roles2[0].RoleName);
 | 
				
			||||||
 | 
					            Assert.Equal(2, roles2[1].RoleId);
 | 
				
			||||||
 | 
					            Assert.Equal("role2", roles2[1].RoleName);
 | 
				
			||||||
 | 
					            Assert.Equal(3, roles2[2].RoleId);
 | 
				
			||||||
 | 
					            Assert.Equal("role3", roles2[2].RoleName);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            var users2 = role.Users;
 | 
					            var users2 = roles2[0].Users;
 | 
				
			||||||
            Assert.Equal(4, users2.Count);
 | 
					            Assert.Equal(4, users2.Count);
 | 
				
			||||||
            Assert.Equal(11, users2[0].Id);
 | 
					            Assert.Equal(11, users2[0].UserId);
 | 
				
			||||||
            Assert.Equal("user1", users2[0].UserName);
 | 
					            Assert.Equal("user1", users2[0].UserName);
 | 
				
			||||||
            Assert.Equal("1,2", string.Join(",", users2[0].RoleIds));
 | 
					            Assert.Equal("1,2", string.Join(",", users2[0].RoleIds));
 | 
				
			||||||
            Assert.Equal(12, users2[1].Id);
 | 
					            Assert.Equal(12, users2[1].UserId);
 | 
				
			||||||
            Assert.Equal("user2", users2[1].UserName);
 | 
					            Assert.Equal("user2", users2[1].UserName);
 | 
				
			||||||
            Assert.Equal("1,2,3", string.Join(",", users2[1].RoleIds));
 | 
					            Assert.Equal("1,2,3", string.Join(",", users2[1].RoleIds));
 | 
				
			||||||
            Assert.Equal(13, users2[2].Id);
 | 
					            Assert.Equal(13, users2[2].UserId);
 | 
				
			||||||
            Assert.Equal("user3", users2[2].UserName);
 | 
					            Assert.Equal("user3", users2[2].UserName);
 | 
				
			||||||
            Assert.Equal("1,3", string.Join(",", users2[2].RoleIds));
 | 
					            Assert.Equal("1,3", string.Join(",", users2[2].RoleIds));
 | 
				
			||||||
            Assert.Equal(14, users2[3].Id);
 | 
					            Assert.Equal(14, users2[3].UserId);
 | 
				
			||||||
            Assert.Equal("user4", users2[3].UserName);
 | 
					            Assert.Equal("user4", users2[3].UserName);
 | 
				
			||||||
            Assert.Equal("3,2,1", string.Join(",", users2[3].RoleIds));
 | 
					            Assert.Equal("3,2,1", string.Join(",", users2[3].RoleIds));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            var roles2 = users2[0].Roles;
 | 
					            users2 = roles2[1].Users;
 | 
				
			||||||
 | 
					            Assert.Equal(3, users2.Count);
 | 
				
			||||||
 | 
					            Assert.Equal(11, users2[0].UserId);
 | 
				
			||||||
 | 
					            Assert.Equal("user1", users2[0].UserName);
 | 
				
			||||||
 | 
					            Assert.Equal("1,2", string.Join(",", users2[0].RoleIds));
 | 
				
			||||||
 | 
					            Assert.Equal(12, users2[1].UserId);
 | 
				
			||||||
 | 
					            Assert.Equal("user2", users2[1].UserName);
 | 
				
			||||||
 | 
					            Assert.Equal("1,2,3", string.Join(",", users2[1].RoleIds));
 | 
				
			||||||
 | 
					            Assert.Equal(14, users2[2].UserId);
 | 
				
			||||||
 | 
					            Assert.Equal("user4", users2[2].UserName);
 | 
				
			||||||
 | 
					            Assert.Equal("3,2,1", string.Join(",", users2[2].RoleIds));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            users2 = roles2[2].Users;
 | 
				
			||||||
 | 
					            Assert.Equal(3, users2.Count);
 | 
				
			||||||
 | 
					            Assert.Equal(12, users2[0].UserId);
 | 
				
			||||||
 | 
					            Assert.Equal("user2", users2[0].UserName);
 | 
				
			||||||
 | 
					            Assert.Equal("1,2,3", string.Join(",", users2[0].RoleIds));
 | 
				
			||||||
 | 
					            Assert.Equal(13, users2[1].UserId);
 | 
				
			||||||
 | 
					            Assert.Equal("user3", users2[1].UserName);
 | 
				
			||||||
 | 
					            Assert.Equal("1,3", string.Join(",", users2[1].RoleIds));
 | 
				
			||||||
 | 
					            Assert.Equal(14, users2[2].UserId);
 | 
				
			||||||
 | 
					            Assert.Equal("user4", users2[2].UserName);
 | 
				
			||||||
 | 
					            Assert.Equal("3,2,1", string.Join(",", users2[2].RoleIds));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            var role = fsql.Select<RoleLazyLoading>().Where(a => a.RoleId == 1).First();
 | 
				
			||||||
 | 
					            Assert.IsNotType<RoleLazyLoading>(role);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            users2 = role.Users;
 | 
				
			||||||
 | 
					            Assert.Equal(4, users2.Count);
 | 
				
			||||||
 | 
					            Assert.Equal(11, users2[0].UserId);
 | 
				
			||||||
 | 
					            Assert.Equal("user1", users2[0].UserName);
 | 
				
			||||||
 | 
					            Assert.Equal("1,2", string.Join(",", users2[0].RoleIds));
 | 
				
			||||||
 | 
					            Assert.Equal(12, users2[1].UserId);
 | 
				
			||||||
 | 
					            Assert.Equal("user2", users2[1].UserName);
 | 
				
			||||||
 | 
					            Assert.Equal("1,2,3", string.Join(",", users2[1].RoleIds));
 | 
				
			||||||
 | 
					            Assert.Equal(13, users2[2].UserId);
 | 
				
			||||||
 | 
					            Assert.Equal("user3", users2[2].UserName);
 | 
				
			||||||
 | 
					            Assert.Equal("1,3", string.Join(",", users2[2].RoleIds));
 | 
				
			||||||
 | 
					            Assert.Equal(14, users2[3].UserId);
 | 
				
			||||||
 | 
					            Assert.Equal("user4", users2[3].UserName);
 | 
				
			||||||
 | 
					            Assert.Equal("3,2,1", string.Join(",", users2[3].RoleIds));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            roles2 = users2[0].Roles;
 | 
				
			||||||
            Assert.Equal(2, roles2.Count);
 | 
					            Assert.Equal(2, roles2.Count);
 | 
				
			||||||
            Assert.Equal(1, roles2[0].Id);
 | 
					            Assert.Equal(1, roles2[0].RoleId);
 | 
				
			||||||
            Assert.Equal("role1", roles2[0].RoleName);
 | 
					            Assert.Equal("role1", roles2[0].RoleName);
 | 
				
			||||||
            Assert.Equal(2, roles2[1].Id);
 | 
					            Assert.Equal(2, roles2[1].RoleId);
 | 
				
			||||||
            Assert.Equal("role2", roles2[1].RoleName);
 | 
					            Assert.Equal("role2", roles2[1].RoleName);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            roles2 = users2[1].Roles;
 | 
					            roles2 = users2[1].Roles;
 | 
				
			||||||
            Assert.Equal(3, roles2.Count);
 | 
					            Assert.Equal(3, roles2.Count);
 | 
				
			||||||
            Assert.Equal(1, roles2[0].Id);
 | 
					            Assert.Equal(1, roles2[0].RoleId);
 | 
				
			||||||
            Assert.Equal("role1", roles2[0].RoleName);
 | 
					            Assert.Equal("role1", roles2[0].RoleName);
 | 
				
			||||||
            Assert.Equal(2, roles2[1].Id);
 | 
					            Assert.Equal(2, roles2[1].RoleId);
 | 
				
			||||||
            Assert.Equal("role2", roles2[1].RoleName);
 | 
					            Assert.Equal("role2", roles2[1].RoleName);
 | 
				
			||||||
            Assert.Equal(3, roles2[2].Id);
 | 
					            Assert.Equal(3, roles2[2].RoleId);
 | 
				
			||||||
            Assert.Equal("role3", roles2[2].RoleName);
 | 
					            Assert.Equal("role3", roles2[2].RoleName);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            roles2 = users2[2].Roles;
 | 
					            roles2 = users2[2].Roles;
 | 
				
			||||||
            Assert.Equal(2, roles2.Count);
 | 
					            Assert.Equal(2, roles2.Count);
 | 
				
			||||||
            Assert.Equal(1, roles2[0].Id);
 | 
					            Assert.Equal(1, roles2[0].RoleId);
 | 
				
			||||||
            Assert.Equal("role1", roles2[0].RoleName);
 | 
					            Assert.Equal("role1", roles2[0].RoleName);
 | 
				
			||||||
            Assert.Equal(3, roles2[1].Id);
 | 
					            Assert.Equal(3, roles2[1].RoleId);
 | 
				
			||||||
            Assert.Equal("role3", roles2[1].RoleName);
 | 
					            Assert.Equal("role3", roles2[1].RoleName);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            roles2 = users2[3].Roles;
 | 
					            roles2 = users2[3].Roles;
 | 
				
			||||||
            Assert.Equal(3, roles2.Count);
 | 
					            Assert.Equal(3, roles2.Count);
 | 
				
			||||||
            Assert.Equal(3, roles2[0].Id);
 | 
					            Assert.Equal(3, roles2[0].RoleId);
 | 
				
			||||||
            Assert.Equal("role3", roles2[0].RoleName);
 | 
					            Assert.Equal("role3", roles2[0].RoleName);
 | 
				
			||||||
            Assert.Equal(2, roles2[1].Id);
 | 
					            Assert.Equal(2, roles2[1].RoleId);
 | 
				
			||||||
            Assert.Equal("role2", roles2[1].RoleName);
 | 
					            Assert.Equal("role2", roles2[1].RoleName);
 | 
				
			||||||
            Assert.Equal(1, roles2[2].Id);
 | 
					            Assert.Equal(1, roles2[2].RoleId);
 | 
				
			||||||
            Assert.Equal("role1", roles2[2].RoleName);
 | 
					            Assert.Equal("role1", roles2[2].RoleName);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            var user = fsql.Select<UserLazyLoading>().Where(a => a.Id == 11).First();
 | 
					            var user = fsql.Select<UserLazyLoading>().Where(a => a.UserId == 11).First();
 | 
				
			||||||
            Assert.IsNotType<UserLazyLoading>(user);
 | 
					            Assert.IsNotType<UserLazyLoading>(user);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            roles2 = user.Roles;
 | 
					            roles2 = user.Roles;
 | 
				
			||||||
            Assert.Equal(2, roles2.Count);
 | 
					            Assert.Equal(2, roles2.Count);
 | 
				
			||||||
            Assert.Equal(1, roles2[0].Id);
 | 
					            Assert.Equal(1, roles2[0].RoleId);
 | 
				
			||||||
            Assert.Equal("role1", roles2[0].RoleName);
 | 
					            Assert.Equal("role1", roles2[0].RoleName);
 | 
				
			||||||
            Assert.Equal(2, roles2[1].Id);
 | 
					            Assert.Equal(2, roles2[1].RoleId);
 | 
				
			||||||
            Assert.Equal("role2", roles2[1].RoleName);
 | 
					            Assert.Equal("role2", roles2[1].RoleName);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1028,13 +1028,13 @@ namespace FreeSql.Internal
 | 
				
			|||||||
                            if (pnvBind == null && trycol == null)
 | 
					                            if (pnvBind == null && trycol == null)
 | 
				
			||||||
                            {
 | 
					                            {
 | 
				
			||||||
                                var findtbrefPkCsName = tbref.Primarys[0].CsName.TrimStart('_');
 | 
					                                var findtbrefPkCsName = tbref.Primarys[0].CsName.TrimStart('_');
 | 
				
			||||||
                                if (findtbrefPkCsName.StartsWith(trytb.Type.Name, StringComparison.CurrentCultureIgnoreCase)) findtbrefPkCsName = findtbrefPkCsName.Substring(trytb.Type.Name.Length).TrimStart('_');
 | 
					                                if (findtbrefPkCsName.StartsWith(tbref.Type.Name, StringComparison.CurrentCultureIgnoreCase)) findtbrefPkCsName = findtbrefPkCsName.Substring(trytb.Type.Name.Length).TrimStart('_');
 | 
				
			||||||
                                var findtrytb = pnv.Name;
 | 
					                                var findtrytb = pnv.Name;
 | 
				
			||||||
                                if (findtrytb.EndsWith($"{tbref.CsName}s", StringComparison.CurrentCultureIgnoreCase)) findtrytb = findtrytb.Substring(0, findtrytb.Length - tbref.CsName.Length - 1);
 | 
					                                if (findtrytb.EndsWith($"{tbref.CsName}s", StringComparison.CurrentCultureIgnoreCase)) findtrytb = findtrytb.Substring(0, findtrytb.Length - tbref.CsName.Length - 1);
 | 
				
			||||||
                                findtrytb += tbref.CsName;
 | 
					                                findtrytb += tbref.CsName;
 | 
				
			||||||
                                if (
 | 
					                                if (
 | 
				
			||||||
                                    tbref.ColumnsByCs.TryGetValue($"{findtrytb}{findtbrefPkCsName}", out trycol) == false && //骆峰命名
 | 
					                                    trytb.ColumnsByCs.TryGetValue($"{findtrytb}{findtbrefPkCsName}s", out trycol) == false && //骆峰命名
 | 
				
			||||||
                                    tbref.ColumnsByCs.TryGetValue($"{findtrytb}_{findtbrefPkCsName}", out trycol) == false //下划线命名
 | 
					                                    trytb.ColumnsByCs.TryGetValue($"{findtrytb}_{findtbrefPkCsName}s", out trycol) == false //下划线命名
 | 
				
			||||||
                                    )
 | 
					                                    )
 | 
				
			||||||
                                {
 | 
					                                {
 | 
				
			||||||
                                }
 | 
					                                }
 | 
				
			||||||
@@ -1077,11 +1077,11 @@ namespace FreeSql.Internal
 | 
				
			|||||||
                                var findtrytbPkCsName = trytb.Primarys[0].CsName.TrimStart('_');
 | 
					                                var findtrytbPkCsName = trytb.Primarys[0].CsName.TrimStart('_');
 | 
				
			||||||
                                if (findtrytbPkCsName.StartsWith(trytb.Type.Name, StringComparison.CurrentCultureIgnoreCase)) findtrytbPkCsName = findtrytbPkCsName.Substring(trytb.Type.Name.Length).TrimStart('_');
 | 
					                                if (findtrytbPkCsName.StartsWith(trytb.Type.Name, StringComparison.CurrentCultureIgnoreCase)) findtrytbPkCsName = findtrytbPkCsName.Substring(trytb.Type.Name.Length).TrimStart('_');
 | 
				
			||||||
                                var findtrytb = pnv.Name;
 | 
					                                var findtrytb = pnv.Name;
 | 
				
			||||||
                                if (findtrytb.EndsWith($"{tbref.CsName}s", StringComparison.CurrentCultureIgnoreCase)) findtrytb = findtrytb.Substring(0, findtrytb.Length - tbref.CsName.Length - 1);
 | 
					                                if (findtrytb.EndsWith($"{trytb.CsName}s", StringComparison.CurrentCultureIgnoreCase)) findtrytb = findtrytb.Substring(0, findtrytb.Length - trytb.CsName.Length - 1);
 | 
				
			||||||
                                findtrytb += trytb.CsName;
 | 
					                                findtrytb += trytb.CsName;
 | 
				
			||||||
                                if (
 | 
					                                if (
 | 
				
			||||||
                                    tbref.ColumnsByCs.TryGetValue($"{findtrytb}{findtrytbPkCsName}", out trycol) == false && //骆峰命名
 | 
					                                    tbref.ColumnsByCs.TryGetValue($"{findtrytb}{findtrytbPkCsName}s", out trycol) == false && //骆峰命名
 | 
				
			||||||
                                    tbref.ColumnsByCs.TryGetValue($"{findtrytb}_{findtrytbPkCsName}", out trycol) == false //下划线命名
 | 
					                                    tbref.ColumnsByCs.TryGetValue($"{findtrytb}_{findtrytbPkCsName}s", out trycol) == false //下划线命名
 | 
				
			||||||
                                    )
 | 
					                                    )
 | 
				
			||||||
                                {
 | 
					                                {
 | 
				
			||||||
                                }
 | 
					                                }
 | 
				
			||||||
@@ -1098,7 +1098,7 @@ namespace FreeSql.Internal
 | 
				
			|||||||
                                    cscodeExtLogic1 = $"			if (this.{trytb.Primarys[0].CsName} == null) return null;\r\n";
 | 
					                                    cscodeExtLogic1 = $"			if (this.{trytb.Primarys[0].CsName} == null) return null;\r\n";
 | 
				
			||||||
                                }
 | 
					                                }
 | 
				
			||||||
                                lmbdWhere.Append(")");
 | 
					                                lmbdWhere.Append(")");
 | 
				
			||||||
                                nvref.Columns.Add(tbref.Primarys[0]);
 | 
					                                nvref.Columns.Add(trytb.Primarys[0]);
 | 
				
			||||||
                                nvref.RefColumns.Add(trycol);
 | 
					                                nvref.RefColumns.Add(trycol);
 | 
				
			||||||
                                nvref.RefEntityType = tbref.Type;
 | 
					                                nvref.RefEntityType = tbref.Type;
 | 
				
			||||||
                                nvref.RefType = TableRefType.PgArrayToMany;
 | 
					                                nvref.RefType = TableRefType.PgArrayToMany;
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user