首页 > 解决方案 > 如何强制更新 API 中的 IIS 更改?

问题描述

我有一个 WebApp,其中包含一些 WebApi 2,WebApp 发布在运行 IIS 的服务器上。

当我向 WebApp 添加新内容时,更新工作正常并且所有内容都正确提供,但现在我刚刚对现有 API 进行了更新,并且该 API 只是不返回任何内容,因为 API 仍然需要旧的参数..

我还尝试删除以下网站的/Microsoft.NET/Framework&Framework64临时文件夹中的缓存文件,但没有任何效果..

那么如何强制 IIS 更新我的 WebApp?

我更改的 API 方法如下:

<HttpPost()>
<Route("rc")>
Public Function RepartiCassa(<FromBody()> ByVal where As ModelConfig.Config) As IEnumerable(Of Reparti)
    Dim re = Request
    Dim headers = re.Headers
    Dim piva As String = ""

    If headers.Contains("authToken") Then
        Dim token As String = headers.GetValues("authToken").First()
        Dim data = TokenManager.Principals(TokenManager.GetPrincipal(token))
        If data Is Nothing Then Return New HttpResponseMessage(HttpStatusCode.Unauthorized)

        piva = data.piva
    End If

    Dim modelConfig As ModelConfig = New ModelConfig

    Dim rep As Reparti = New Reparti
    Return rep.TotaliRepCassa(where.data.inizio, where.data.fine, modelConfig.QueryParametri(where.config, "TRC", False), piva)
End Function

虽然在旧版本中看起来如下

<HttpPost()>
<Route("rc")>
Public Function RepartiCassa(<FromBody()> ByVal where As ModelConfig.Config) As IEnumerable(Of RepCassa)
    Dim re = Request
    Dim headers = re.Headers
    Dim piva As String = ""

    If headers.Contains("authToken") Then
        Dim token As String = headers.GetValues("authToken").First()
        Dim data = TokenManager.Principals(TokenManager.GetPrincipal(token))
        If data Is Nothing Then Return New HttpResponseMessage(HttpStatusCode.Unauthorized)

        piva = data.piva
    End If

    Dim modelConfig As ModelConfig = New ModelConfig

    Dim repCassa As RepCassa = New RepCassa
    Return repCassa.TotaliRepCassa(where.data.inizio, where.data.fine, modelConfig.QueryParametri(where.config, "TRC", False), piva)
End Function

一切都变了,模型是 RepCassa 成为 Reparti

标签: .netiisasp.net-web-api2

解决方案


IIS 中的更新项目不会更新应用程序池设置,因此不会触发应用程序池回收。

请在更新项目 Web 部署时尝试手动回收应用程序池或回收应用程序池。

https://blogs.iis.net/msdeploy/operations-on-application-pools-as-admin-and-non-admin


推荐阅读