1

私のサイトの 1 つで UrlRewriting モジュールを使用しています。サイトには 2 つのバージョンがあります。

  1. デスクトップ
  2. モバイル

サイトのモバイル バージョンのコードは、デスクトップ バージョンにのみ存在します。つまり、デスクトップ バージョンが含まれているc:\websites\[websitename]場合、モバイル サイトはc:\websites\[websitename]\mobile

今、私はfrom UIへadd/modify/deleteのユーティリティを持っているので、私は として知られている別のファイルを作成し、それをノードの下のファイルにリンクしました。新しいバニティが追加されるたびに、データベースを更新してから、データベースからファイル全体を更新し、.vanity url'svanity url'surl.configweb.configrewriteurl.configweb.config

Web.config の更新は次のように行われました

Public Sub RefreshWebConfig()
    Dim doc As New XmlDocument()
    doc.Load(HttpContext.Current.Server.MapPath("web.config"))
    doc.Save(HttpContext.Current.Server.MapPath("web.config"))
 End Sub

上記のコードは期待どおりに機能し、web.configファイルが更新されるため、追加されたバニティがその場で有効になります。

現在、私のクライアントは、デスクトップ バージョンから追加されたバニティに対しても、バニティをモバイル バージョンに更新する必要があることを要求しています。だから今私がやっていることは、デスクトップバージョンと同じように、下mobile\urls.configに別のファイルを作成し、ファイルにリンクしていることです。mobile\ web.config

以下のコードを使用して、以下のように mobile\web.config ファイルを更新しています。

Public Sub RefreshWebConfig()
   Dim doc As New XmlDocument()
   doc.Load(HttpContext.Current.Server.MapPath("web.config"))
   doc.Save(HttpContext.Current.Server.MapPath("web.config"))
   Dim doc1 As New XmlDocument()
   doc1.Load(HttpContext.Current.Server.MapPath("~/mobile/web.config"))
   doc1.Save(HttpContext.Current.Server.MapPath("~/mobile/web.config"))
End Sub

ただし、変更がモバイル サイトに反映される まで、またはmobile\web.configしばらく待つ必要があるため、上記のコードでファイルを更新しません。5-10mins20mins

この問題の原因と考えられる解決策を教えてください。

4

1 に答える 1