2017-12-04 10 views
-1

Jiraに統合されたWebサイトで作業しています。 Webページには「説明」セクションがあります。私は、Webページ上の記述を書くとき、これは大丈夫に見えますが、それはのJiraにインポートされるとき、チケットが説明にHTMLタグがあります。代わりに、単にのJiraにWebサイトを統合するC#プログラムからのHTMLの削除

ex: <p> this is the description <p> 

「これは説明です」ここで説明コールは、C#コードである:

var ticket = new Ticket() 
{ 
    Id = 0, 
    IsActive = true, 
    TicketDescription = 
     string.IsNullOrEmpty(issue.Description) 
      ? string.Empty 
      : issue.Description.Replace(Environment.NewLine, "<br />"), 
    AssignedToId = assignedToUser.SecurityUserId, 
    TicketTypeId = type == 0 ? 1 : type, 
}; 

私はHTMLが常に取り除かれるようTicketDescriptionに追加する必要があるだろうか?

+0

これがそうあなたが黒をお勧めします<*>のすべてのインスタンスを削除します – MethodMan

答えて

0

あなたはすべてのタグを削除する文字列の拡張機能を作成することができます。

public static string RemoveHtmlTags(string input) 
{ 
    return Regex.Replace(input, "<.*?>", String.Empty); 
} 

その後、あなたが好きそれを使用することができます。

TicketDescription = 
     string.IsNullOrEmpty(issue.Description) 
      ? string.Empty 
      : issue.Description.RemoveHtmlTags() 
+0

'実際の'「\ n個の\ rをする\」で、この 'Environment.NewLine'を交換してみてくださいリストは代わりにこのアプローチはあなたに行くかもしれない – MattjeS

+0

ありがとう! public static stringメソッドはどこで宣言しますか? –

+0

おそらく、共通のプロジェクトにStringExtensions.csというクラスを作成するのが最善です – MattjeS

0

私はこのような拡張メソッドを作成します:

/// Strips all HTML tags from a string 
public static string StripHtml(this string html) 
{ 
    if (string.IsNullOrEmpty(html)) 
     return html; 
    return Regex.Replace(html, @"<(.|\n)*?>", " ").Trim(); 
} 

置換トークンは、都合のよいときにカスタマイズできます。この場合、私は単に空白を使用しました。

それからちょうどの代わりにそれを使用して、あなたのReplace

関連する問題