源文件(.cs)中的代码更改未反映在应用程序中

时间:2014-02-21 20:55:27

标签: c# .net dll

我有一个网站,我必须迁移到我们的服务器,几乎没有代码更改。这是场景:

我们有一个由其他供应商编写的网站,现在我们必须将该网站迁移到不同的服务器并进行一些小的代码更改。问题是他们有一个自定义dll sat Test.dll,它有一个文件说Person.cs,现在该文件也作为源文件存在于网站(Project)中,这是必需的,因为我们必须对其进行更改或将来可能不得不这样做。但是当我在Person.cs的源代码中进行更改时,我没有看到这些更改反映在我的应用程序中,因为它正在从dll中获取Person.cs文件,在阅读了一些在线帖子和文档之后是.net如何工作虽然java以另一种方式工作。

我是.net的新手,所以无法想到解决方案,我们将非常感谢任何意见或建议。

3 个答案:

答案 0 :(得分:1)

如果是web 项目,则在项目构建期间编译c#代码。要进行更改,您需要重建项目,生成新的二进制文件。

答案 1 :(得分:0)

可能发生的情况是您的供应商未向您提供解决方案(.sln)文件。您可能需要从一个空白网站开始。由于信息量有限,很难确定这是webforms还是mvc网站。

答案 2 :(得分:0)

我创建了一个在IIS中托管WCF服务的网站。我创建了个人资料来发布网站,让我的生活轻松。我不想将丢弃的DLL从WCF服务拖到网站上,所以我提出了一个在每次发布之前编译代码的条件。

个人资料的代码如下:

<?xml version="1.0" encoding="utf-8"?>

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>x86</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish />
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <publishUrl>C:\TestWebsite</publishUrl>
    <DeleteExistingFiles>True</DeleteExistingFiles>
    <PrecompileBeforePublish>True</PrecompileBeforePublish>
    <EnableUpdateable>True</EnableUpdateable>
    <DebugSymbols>True</DebugSymbols>
    <WDPMergeOption>DonotMerge</WDPMergeOption>
  </PropertyGroup>
</Project>

确保在发布之前编译代码的行:

<PrecompileBeforePublish>True</PrecompileBeforePublish>