Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用DBML设置业务逻辑层_C#_.net_Linq To Sql_Class_Constructor - Fatal编程技术网

C# 使用DBML设置业务逻辑层

C# 使用DBML设置业务逻辑层,c#,.net,linq-to-sql,class,constructor,C#,.net,Linq To Sql,Class,Constructor,我正忙于制作业务逻辑层。现在我遇到了一个问题,因为我想用c#编程,而我必须为整个项目制作一个基于vb.net的模块。我使用解决方案中的一个新项目解决了这个问题。该项目将维护数据类和业务逻辑。现在我遇到了一个问题,至少我不知道该怎么办。 这就是我到目前为止所做的: 我在一个解决方案中构建了一个新项目,在这个解决方案中我不能使用C#,因为它都是vb.net 我已经为我希望在未来的应用程序中使用的每种类型的实体创建了dbml 现在我正在处理业务逻辑层。我的应用程序中必须使用的每种类型都有dbml。

我正忙于制作业务逻辑层。现在我遇到了一个问题,因为我想用c#编程,而我必须为整个项目制作一个基于vb.net的模块。我使用解决方案中的一个新项目解决了这个问题。该项目将维护数据类和业务逻辑。现在我遇到了一个问题,至少我不知道该怎么办。 这就是我到目前为止所做的:

  • 我在一个解决方案中构建了一个新项目,在这个解决方案中我不能使用C#,因为它都是vb.net
  • 我已经为我希望在未来的应用程序中使用的每种类型的实体创建了dbml
现在我正在处理业务逻辑层。我的应用程序中必须使用的每种类型都有dbml。例如,我有一个名为“关系”的dbml。现在我想设置BLL功能,以返回基于searchstring输入的关系列表。 现在,我应该实现一个名为Relations.cs的类,并添加构造函数逻辑等,创建一个此类列表并返回此列表,还是应该使用关系dbml中的Datacontext并使用linq返回一个qry类型的列表,如下一行的代码

List<QRY_HOSTING_Relaty> relatieLijst = (
    from QRY_HOSTING_Relaty res 
    in dcRelaties.QRY_HOSTING_Relaties
    select res).ToList<QRY_HOSTING_Relaty>();
List relatieLijst=(
来自QRY_托管关系资源
在dcRelaties.QRY_HOSTING_Relaties中
选择res.ToList();
我不确定是否必须创建自己的类型,因为我已经有了由dbml定义的类型,我可能只能使用这些类型。
所以,我应该实现自己的关系类并使用dbml吗?

每个数据库/域通常应该有一个dbml文件。您不应该为每个表/类/实体创建一个DBML,因为这将为每个类创建一个
DataContext
。这样做会使您失去LINQ to SQL的大部分有用功能,如内存事务(工作单元)和对多个实体执行LINQ查询

通常不需要创建自己的类型来包装由LINQ到SQL生成的类。典型的用法是:在数据库中创建表(具有适当的关系);创建一个DBML并在DBML上拖动所有需要的表;更改表名和列名是适当的