首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将现有的ASP.NET项目隔离到3层

将现有的ASP.NET项目隔离到3层
EN

Stack Overflow用户
提问于 2011-04-04 13:46:48
回答 3查看 316关注 0票数 0

在我目前的asp.net项目中,我在两个子文件夹(BLL,DAL)中有业务逻辑和和数据访问代码,这两个子文件夹本身就是网站项目的app_code文件夹。我需要将它们分离到两个单独的项目(一个项目用于业务层,一个项目用于数据访问代码)。

  1. 如何维护当前在web.config文件中的数据访问项目所需的连接字符串?(即,如果我选择类库模板来创建DAL和BLL项目)
  2. 如何维护当前在BLL,DAL代码文件中使用的各种其他web.config键值?
  3. 如何部署已编译的项目?(ie网站项目,我目前正在将bin文件夹部署到Staging>产品中,但是这样我应该把DAL.dll和BLL.dll以及相关的配置文件放在哪里)
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-04-04 13:50:22

1和2)添加一个“使用System.Configuration”并只引用它们。由于他们在项目中的引用,asp.net会把它捡起来。

例如:

代码语言:javascript
复制
using System.Configuration;
    namespace DataLayer
    {
        public class BaseDataAccess
        {        
            public static string ConnectionString_Logging
            {
                get
                {
                    return ConfigurationManager.ConnectionStrings["ConnectionString_Logging_Legacy"].ToString();
                }
            }

        }
    }

3)如果正确引用,编译时,BLL和DAL dll将位于主/ui项目的bin文件夹中。如果使用web.config,你就可以走了。

票数 1
EN

Stack Overflow用户

发布于 2011-04-04 13:49:31

从根本上说,您应该在整个过程中将这些配置位封装在对象中。但无论如何,您可以将它们移到不同的类项目中,而无需担心--它将从托管的任何项目中获取配置设置,因此您不需要以某种方式将配置提供给库。

票数 0
EN

Stack Overflow用户

发布于 2011-04-04 13:51:32

现有的代码应该可以工作,因为这些设置是从正在运行的进程的Config文件中读取的,在本例中是您的Web.Config,但是我建议您使用自定义配置设置,这些设置将从您的Web.Config文件中读取,典型的实现可能如下所示:

代码语言:javascript
复制
<YourCompany>
    <YourCompany.ProjectName>
          <Data ConnectionName="NameOfConnectionToUse" SomethingElse="XZY" />
          <Business SomeValue="12345" />
    </YourCompany.ProjectName>
</YourCompany>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5539408

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档