U2 Visual Studio 2013加载项

时间:2014-01-07 19:34:27

标签: u2 u2netdk

我在同一条船上,我无法在EDM文件中添加添加实体。我从Rocketsoftware下载了最新的.NET Toolkit 1.3。我错过了什么,或者设计师还在等待。

请告诉我,因为这样可以轻松连接到UniData。

感谢。

2 个答案:

答案 0 :(得分:0)

您需要执行以下步骤以在Visual Studio 2013中创建实体数据模型。

打开Visual Studio 2013

enter image description here

打开视图 - >服务器资源管理器

enter image description here

创建U2连接

enter image description here

enter image description here

创建C#Winform项目

enter image description here

创建ADO.NET实体数据模型

右键单击Project并选择Add New Item。

enter image description here

在右侧,选择“数据”,在左侧选择“ADO.NET实体数据模型”。在“名称”字段中,输入“客户”。选择“添加”按钮

enter image description here

从数据库中选择“EF Designer”并选择“下一步”

enter image description here

选择连接字符串,并为敏感数据选择“是”

enter image description here

选择Entity Framework 5.0。 注意:v2.1.1将包含Entity Framework 6.0功能。

enter image description here

选择所有表格

enter image description here

按“完成”,您将看到“实体数据模型”

enter image description here

答案 1 :(得分:0)

您还可以使用LINQ to Entity Code First Model,Visual Studio 2013和U2 Toolkit for .NET v2.1.0。

有关U2 Toolkit for .NET v2.1.0的更多信息,请参见下文。

创建单值类

public class CUSTOMER
{
    public int CUSTID { get; set; }
    public string FNAME { get; set; }
    public string LNAME { get; set; }
    public virtual ICollection<CUSTOMER_ORDER> Orders { get; set; }
}

创建多值类

public class CUSTOMER_ORDER //Syntax : FILENAME_ASSOCIATION OR FILENAME_MULTIVALUE
{
    [Column (Order =0)]
    public int CUSTID { get; set; }

    [Column(Order = 1)]
    public string PRODID { get; set; }

    [Column(Order = 2)]
    public string SER_NUM { get; set; }

    [Column(Order = 3)]
    public int Z_MV_KEY { get; set; }

    [Column(Order = 4)]
    //[ForeignKey("CUSTID")]
   public virtual CUSTOMER Customer { get; set; }

}

在单值类和多值类之间创​​建关系

public virtual ICollection<CUSTOMER_ORDER> Orders { get; set; }

public virtual CUSTOMER Customer {get;组; }

创建上下文类

public class CustomerContext : DbContext
{
    public CustomerContext()
    {

    }
    public DbSet<CUSTOMER> Customers { get; set; }

    public DbSet<CUSTOMER_ORDER> Orders { get; set; } //Syntax : FILENAME_ASSOCIATION OR FILENAME_MULTIVALUE

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        //modelBuilder.Conventions.Remove<IncludeMetadataConvention>();
        modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
        modelBuilder.Conventions.Remove<PluralizingEntitySetNameConvention>();
        modelBuilder.Conventions.Remove<OneToOneConstraintIntroductionConvention>();
        modelBuilder.Conventions.Remove<OneToManyCascadeDeleteConvention>();
        modelBuilder.Conventions.Remove<AssociationInverseDiscoveryConvention>();
        modelBuilder.Conventions.Remove<DatabaseGeneratedAttributeConvention>();
        modelBuilder.Conventions.Remove<DeclaredPropertyOrderingConvention>();
        modelBuilder.Conventions.Remove<RequiredNavigationPropertyAttributeConvention>();

        modelBuilder.Entity<CUSTOMER>().Property(t => t.CUSTID)
                        .HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);


        Database.SetInitializer<CustomerContext>(null);
        modelBuilder.Entity<CUSTOMER>()
        .HasKey(pk => new { pk.CUSTID })
         .ToTable("CUSTOMER");

        modelBuilder.Entity<CUSTOMER_ORDER>()
            .HasKey(pk => new { pk.CUSTID, pk.Z_MV_KEY })
        .ToTable("CUSTOMER_ORDER");//Syntax : FILENAME_ASSOCIATION OR FILENAME_MULTIVALUE

        modelBuilder.Entity<CUSTOMER_ORDER>()
        .HasRequired(c => c.Customer)
        .WithMany(p => p.Orders)
        .HasForeignKey(c => c.CUSTID)
         .WillCascadeOnDelete(false);


    }
}

在App.Config文件

中添加条目

<add name="CustomerContext" connectionString="Database=HS.SALES;User ID=user;Password=mypass;Server=myserver;Pooling=false;ServerType=universe;PersistSecurityInfo=true;AccessMode=Native;RpcServiceType=uvcs" providerName="U2.Data.Client"/>

运行App

static void Main(string[] args)
    {

        try
        {
            Console.WriteLine("Start...");
            Database.SetInitializer<CustomerContext>(null);
            CustomerContext ctx = new CustomerContext();
            var q = ctx.Customers.ToList();
            foreach (var item in q)
            {
                string lCUSTID = Convert.ToString(item.CUSTID);
                string lFNAME = Convert.ToString(item.FNAME); ;
                string lLNAME = Convert.ToString(item.LNAME); ;

                Console.Write("CUSTID:" + lCUSTID);
                Console.Write(" FNAME:" + lFNAME);
                Console.Write(" LNAME:" + lLNAME);

                foreach (var item2 in item.Orders)
                {
                    string lCUSTID2 = Convert.ToString(item2.CUSTID);
                    string lPRODID = Convert.ToString(item2.PRODID); ;
                    string lSER_NUM = Convert.ToString(item2.SER_NUM);
                    string lZ_MV_KEY = Convert.ToString(item2.Z_MV_KEY);

                    Console.Write("\t"+"CUSTID:" + lCUSTID2);
                    Console.Write("\t" + " PRODID:" + lPRODID);
                    Console.Write("\t" + " SER_NUM:" + lSER_NUM);
                    Console.Write("\t" + " Z_MV_KEY:" + lZ_MV_KEY);
                }


                Console.WriteLine();
            }
            Console.WriteLine("End...");
            Console.Read();

        }
        catch (Exception e)
        {
            string lErr = e.Message;
            if (e.InnerException != null)
            {
                lErr += e.InnerException.Message;
                Console.WriteLine(lErr);

            }
        }
    }

V2.1.0中的新功能

  1. 完整的一个.NET包
  2. 在一个屋檐下:SQL Access,Native Access和UniObjects API (以前称为UO.NET)
  3. 使用SQL语法访问NoSQL(多值数据)
  4. 填充System Builder帐户文件,属性和子例程 在Visual Studio Server Explorer中。
  5. 多值ADO.NET提供程序(使用U2文件进行本机访问, 属性,子程序)
  6. 多值加载项(U2文件,属性,Visual Basic中的子例程) Studio Server Explorer)
  7. 连接字符串中的性能调整参数:“NativeFetch” 和“UseFastGetRecordID”
  8. 使用U2Files和子程序的自动数据加密(ADE)
  9. 使用U2Files和子程序的SSL
  10. 使用U2Files和子例程的连接池
  11. 将U2文件和子例程拖放到DataSet Designer和  实体数据模型设计器VS2010,VS2012和VS2013支持
  12. U2Files到JSON数据(用于JavaScript / HTML5,MVVM  图案/ Knockout.js)
  13. 使用U2Files和子例程的ASP.NET Web API和oData支持(  移动设备,平板电脑应用,PhoneGap移动应用,Xamarin移动  App,Windows Store)
  14. 使用ASP.NET MVC4 Web应用程序和经典ASP.NET应用程序  U2Files和子程序
  15. 使用U2Files和子例程的WCF
  16. 使用U2Files和子程序的WPF
  17. 使用U2Files和的SQL Server Integration Services(SSIS)  子程序
  18. 使用U2Files和子例程的SQL Server Reporting Services(SSRS)
  19. SharePoint Designer和外部数据源(U2文件和  子程序)