javascript 在 XElement 中

javascript in XElement

在 C# 中将 javascript 放入 XElement 对象的正确方法是什么?

目前我有:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;

namespace ConsoleApp2
{
   class Program
   {
      static void Main(string[] args)
      {
         var tag = new XElement
                (
                   "script",
                   new XAttribute("type", @"text/javascript"),
                   @"

    $().ready(onLoad);

    function onLoad()
    {
       if (3 > 1){
         alert('Hello world');
       }
    };
    "
                );

         Console.WriteLine(tag.ToString());

         Console.ReadKey();
      }
   }
}

输出为:

<script type="text/javascript">

    $().ready(onLoad);

    function onLoad()
    {
       if (3 &gt; 1){
         alert('Hello world');
       }
    };
    </script>

但我实际上想要 > 而不是 &gt;... 我做错了什么?是否有将 javascript 放入 XElement 的正确方法?如果不是,正确的方法是什么?

以下有效。我必须添加 XCData 并将 // 放在 XCData 元素的前面以及 // 在 javascript.

的末尾
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
using System.Web;

namespace ConsoleApp2
{
   class Program
   {
      static void Main(string[] args)
      {
         var tag = new XElement
                (
                   "script",
                   new XAttribute("type", @"text/javascript"),
                   "//",
                   new XCData(@"

    $().ready(onLoad);

    function onLoad()
    {
       if (3 > 1){
         alert('Hello world');
       }
    };//")
                );


         Console.WriteLine(tag.ToString());

         Console.ReadKey();
      }
   }
}

给出以下输出:

<script type="text/javascript">//<![CDATA[                                                                                                                                                                                                              
    $().ready(onLoad);                                                                                                                                                                                                                              
       function onLoad()                                                                                                       
       {                                                                                                                          
          if (3 > 1){                                                                                                               
              alert('Hello world');                                                                                                 
          }                                                                                                                    
       };//]]></script>