小编you*_*pal的帖子

Web应用程序结构和部署

我们的产品是ASP.Net Web应用程序.目前,我们在Visual Studio中使用Web站点项目,但一直在研究使用Web应用程序项目.我目前正在研究它们,以便我们可以改进我们的部署过程.

我们有一个在不同客户端之间共享和通用的基本网站,然后我们在客户端网站项目中使用特定于客户端的功能扩展它.客户端项目扩展基础,因此依赖于其内容.要构建完整的产品,我们首先部署基本网站,然后将其与客户端项目中的内容重叠.

在Visual Studio中转换为Web应用程序项目时,我们希望能够创建基础项目,然后创建客户端项目并设置对base的引用.这种结构似乎工作正常,但是当我们尝试使用MSDeploy从客户端项目部署应用程序时,只发布基本网站的dll.这对某些事情来说很好,引用编译的代码很有用,但还有其他项目,如images,js pages,htm等,它们仍然是客户端应用程序运行所必需的源代码.我们需要的不仅仅是基础网站的编译代码.

尽管如此,我可以在这里想到几个选择:

  1. 继续分两步进行部署.首先是基础网站,然后是客户网站,以构建完整的产品.
  2. 修改部署过程以从基础项目复制所需的源文件
  3. 重新构建我们的模型,以不同的方式支持这种基本 - 客户关系.不太确定这是如何工作的,并且是最不可行的选择.
  4. ??

我错过了不同的选择吗?我在设置项目的方式上做错了吗?除了共享编译代码之外,是否还有更多使Web应用程序引用另一个Web应用程序?如果是这种情况,为什么不只是使用共享类库?或者我可能错过了MS Deploy流程的一些内容?

我对这里的建议持开放态度,因为我觉得我错过了一些东西.我不认为我们的Web应用程序模型太独特了.

更新:双部署过程确实有效,但感觉有点笨拙.还有其他输入吗?

asp.net deployment web-applications msdeploy vs-web-application-project

11
推荐指数
1
解决办法
1492
查看次数

网络服务VS. Aspx页面:优点和缺点

我们开发了一个托管在内部网络上的ASP.Net Web应用程序.目前,我们有一些ASPX页面可以处理来自客户端的Web请求并与我们的服务器进行交互.我们正在开始开发下一个主要的应用程序版本,我们正在决定架构.

与使用完整的Web服务(很可能是WCF服务)相比,使用ASPX页面处理http请求有什么区别?

在研究这个问题时,我发现了一些相关的帖子,这些帖子在这里这里都是适度的.我对一些主要差异的理解如下:

  1. ASPX页面受限于它们可以接收的请求类型.它们是严格的HTTP,而WCF服务可以有多个端点来服务各种协议(HTTP,TCP等).
  2. 由于ServiceContracts,更具体地定义了WCF服务.这意味着如果项目引用了该服务,他们就会确切地知道在方法,用法和文档方面会有什么期望.在包含的方法和接受的请求方面,ASPX页面对所有人来说都是免费的.

但是,基于这些概念,我的问题如下:

  1. 支持不同协议的能力是未来验证和兼容性方面的一个很好的特性,但是如果我们目前使用它通过HTTP进行交互,我们会看到真正的好处吗?
  2. 根据我之前的观点,如果我们只是通过网络与服务进行交互,那么这些点中的任何一点真的会有所不同吗?只要它所称的方法"正常工作",http请求就不关心任何更精细的细节或合同保证.

有什么我想念的吗?使用服务的任何关键好处?就个人而言,我支持Web服务架构.我喜欢拥有一个可以支持未来发展的灵活且定义明确的系统的想法.我基本上想要摆脱这个是一种方式去同事说"这应该是一个服务的xyz原因,我们可以看到abc改进这样做".

c# asp.net wcf web-services

5
推荐指数
2
解决办法
5756
查看次数

Team Foundation Server:将Collection的项目克隆到新的Collection中

我们希望为下一版本的应用程序开发创建一个新的Team Foundation Server Collection.我们当前版本的源代码基本上不适用,除了一些应该或多或少保持不变的DLL.我们想要创建一个新的集合,但想知道我们是否能够从现有集合中克隆DLL项目以保留历史记录.

这可能吗?我们意识到如果DLL需要任何错误修正,这可能会带来一些"双重维护"问题,但我们并不太关心这种情况.

到目前为止,我已经提出了一些资源.一些MSDN帖子指向人们分裂团队项目集.但问题是,每个集合中只能有一个项目.它指出:

项目不能存在于多个集合中.在删除拆分集合之间的所有重复项目之前,您将无法启动重命名的集合.

这不是我们想要的.我们希望在每个集合中保留两个具有历史记录的项目.

否则,我看到了TFSConfig命令.它包含一个/ clone选项,但我不太确定它的用法(其他例子也很难得到),并且它提到它主要用于拆分.

我们是否希望做一些不可能的事情?我们是否需要复制源并将其作为新项目添加到新集合中,如果我们确实需要历史记录,请参考旧集合?谢谢.

.net tfs

4
推荐指数
1
解决办法
4948
查看次数

如何在基类上使用派生属性?

我有一个基类,它有一个属性和一个使用该属性的方法.我有一个继承该基类的类,并且有自己的基类属性实现,使用New修饰符显式隐藏.在基类的方法中,是否有一种使用继承类'属性而不是基类实现的好方法?

class Program
{
    public class MyBase
    {
        public string MyProperty { get { return "Base"; } }

        public string MyBaseMethod()
        {
            return MyProperty;
        }
    }

    public class MyInherited : MyBase
    {
        public new string MyProperty { get { return "Inherited"; } }
    }

    static void Main(string[] args)
    {
        List<MyBase> test = new List<MyBase>();
        test.Add(new MyBase());
        test.Add(new MyInherited());

        foreach (MyBase item in test)
        {
            Console.WriteLine(item.MyBaseMethod());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在示例中,输出为:Base Base

目前的解决方法:

    ...
    public class MyBase
    {
        public string MyProperty { …
Run Code Online (Sandbox Code Playgroud)

c# inheritance

0
推荐指数
1
解决办法
178
查看次数