问题标签 [xmlinclude]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - System.InvalidOperationException:在此上下文中不能使用类型 [XYZ]。BUG确认
我在这件事上束手无策。我偶尔会从我的 .Net 2.0 asmx Web 服务中收到上述错误。我已经安装了正确的 XmlInclude(),它只是有时出现——当我重建和更新站点时,它可能会出现,也可能不会出现,没有押韵或原因。如果我移动一些 XmlIncludes()、重建并向上推送更改,错误通常会消失。
在将所有内容转换为 DLL 的构建过程到位之前,我使用的是良好的 ol xcopy 部署方法。然后错误也发生了,但我所要做的就是在定义所有 XmlInclude() 调用的文件中添加一个空格,然后 IIS 将重新编译,错误就会消失。
对于它的价值,定义了很多 XmlIncludes,大约 100 个左右。
有任何想法吗?
这是一个片段:
编辑:似乎重新排列 XmlIncludes 会使错误消失,但它可能会或可能不会在我下次重新编译和重新部署时再次出现。
编辑#2:好的,更多细节。通过更改 web.config 强制回收不能解决问题,也不能完全重新启动 IIS。由于某种原因,我的日志没有正确写出,所以我还没有堆栈跟踪。
这一次,错误发生在 2 个特定方法上。我对 global.asax 进行了更改(以尝试修复我的堆栈跟踪日志记录),重新构建和更新,两种方法之一开始工作。然后,我将带有 XmlIncludes 的类拆分为 2 个部分类,重新构建、更新,这两种方法都重新开始工作。我现在不确定这是否是永久修复,因为它是如此随机;我将再次更新下一个构建周期。
编辑#3:绝对不是永久修复,我仍然没有找到正确的位置来捕获完整的堆栈跟踪(尽管我的其他日志都工作正常)。啊。下一轮我会再更新。
编辑#4:最后有一个堆栈跟踪。它不会在 Visual Studio 中捕获,也不会在我的 global.asax 中的全局异常处理程序中捕获。以下是直接从 Web 浏览器调用该方法时显示的结果:
编辑#5:
这可能是上述错误的症状,所以我不相信它是相关的,但我还是会发布它。如果我附加到托管调试助手并刷新一堆,我最终会得到:
我不确定它是否相关......可能只是错误流。
编辑#6:
好的,更多信息。我在这里使用了 Scott Hanselman 的博客文章来进入生成的程序集。事实证明,尽管有 XmlInclude,但生成的程序集没有对其中类型的引用,所以这绝对是 .NET 中的一个错误。我试图追查是什么触发了它,但是任何生成输出程序集(sgen?)的东西都失败了。
编辑#7:
仅供参考,我已向 MS 提交了错误报告:
https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=523253
c# - 如何动态添加 XmlInclude 属性
我有以下课程
现在,当我尝试运行代码时,我在最后一行得到了 InvalidOperationException
类型 XmlTest.C 不是预期的。使用 XmlInclude 或 SoapInclude 属性指定静态未知的类型。
我知道用 [XmlRoot] 添加一个 [XmlInclude(typeof(C))] 属性可以解决问题。但我想动态地实现它。因为在我的项目中,C 类在加载之前是未知的。C 类正在作为插件加载,因此我无法在其中添加 XmlInclude 属性。
我也试过
前
但没有用。它仍然给出同样的例外。
有谁知道如何实现它?
c# - C# XmlSerializer 在 Java 中的 XmlInclude 等效项
我正在寻找与 C# 中的 XmlInclude 相同的 Java 注释。
我通过套接字获得了 XML 结构。结构如下所示:
对应的Java Class定义如下:
在 C# 中,该类看起来像这样:
<<< 在我看来,这似乎是公共课的魔力答案:ICloneable
问题是,“AnswerObject”可以是任何类型的对象。在我的示例中,“AnswerObject”是“Status”类型的对象,但它也可以是字符串或其他任何类型的对象。
在 C# 中,我可以使用 XmlSerializer 反序列化 XML 结构。在 Java 中,我使用以下内容:
C# 和 Java(以及)自动处理字符串。但是在有另一个对象的情况下,我可以用 XmlInclude 其他已知类来宣布 C#。Java中有类似的东西吗?
.net - 为所有派生类自动包含 XmlInclude 的方法?
如果实例不是派生的,显然 XmlSerializer 对对象工作顺利,否则我必须显式应用属性以将特定派生类包含到基类中。我有大约 50 多个派生类,将来可能还会更多,有没有办法告诉 XmlSerializer 自动序列化对象的派生部分,而不用麻烦我更明确地表达我想要的东西?我只想少打字。
c# - Any way to specify the XML string used in xsi:type=""?
I have a hierarchy of classes that are serialised to XML using XMLSerialiser
. To do this I am declaring all the concrete types with [XmlInclude]
. eg.
An instance of Derived gets serialised as:
Is there any way change the type text to something other than the class name? eg:
c# - xml 序列化和继承类型
我收到错误“{”类型 Device1 不是预期的。使用 XmlInclude 或 SoapInclude 属性指定静态未知的类型。"}"
目前我有:
我正在做:
序列化程序会:
我在序列化程序方法(xs.Serialize)的最后一行出现错误:“{”类型Device1不是预期的。使用 XmlInclude 或 SoapInclude 属性指定静态未知的类型。"}"
我试图在 Device 类上编写 XmlInclude。没有帮助。如果我换行
成为
然后它可以工作,但我想编写多种设备类型的数组。
android - 无法访问包含布局内的视图
我正在使用作为片段一部分的“包含”布局。这是我膨胀包含“包含”的布局的地方(下面是布局本身):
hourly_fragment.xml
我可以访问其他 2 个包含的布局中的项目,但不能从“amazon_details”布局中访问……有什么想法吗?
xml - 找不到 xml 片段
我正在尝试在 xml 文件中包含 xml 片段文件并从 java 代码访问 parent.xml。
Java 代码如下所示:
parent.xml 文件如下所示:
parent.xml和child.fragment在同一个位置C:/Users/admin/Desktop/
但是java代码找不到child.fragment..
我收到以下错误:
c# - 如何使用 XmlInclude 动态指定类型?
我有我使用的这些类:
我有一个方法可以创建下面的 XML。
我有两个具有 Report01 和 Report02 对象的列表。
当我尝试像这样创建 XML 时:
我看到了这个例外:
不需要类型“Report01(或 Report02)”。使用 XmlInclude 或 SoapInclude 属性指定静态未知的类型。
我怎么解决这个问题?
php - PHP 忽略
我有 XML 文件<xi:include
,加载为:
$datas = new SimpleXMLElement( file_get_contents( "data.xml" ) );
$dom = dom_import_simplexml($datas);
$dom->ownerDocument-
我有 XML 文件<xi:include
,加载为:
当我运行脚本时,只有那些<xi:include
没有错误的才会被加载/解析。
在另一台机器上,解析器能够处理主要的 XML 和所有包含的内容。如果出现错误,<xi:include
它会将它们连同它们的位置一起吐出。这有助于调试。
这看起来像配置问题,但无法在 php.ini 中找到何时更正它。
任何想法?
谢谢。
您可以尝试将该triggerSave()
函数添加到 TinyMCE 初始化中,以便在编辑器的更改事件中自动更新基础字段...
当您尝试通过 AJAX 发布表单时,这将消除执行此操作的需要。
更新:您的选择器是字符串还是 DOM 元素?根据我在您的代码中看到的
看起来您正在尝试提供一个 DOM 元素(或 jQuery 包装的 DOM 元素)。选择器参数需要一个字符串,如此处所述:
https://www.tinymce.com/docs/configure/integration-and-setup/#selector
如果你硬编码(作为测试)一个字符串,那行得通吗?
我有 XML 文件<xi:include
,加载为:
$datas = new SimpleXMLElement( file_get_contents( "data.xml" ) );
$dom = dom_import_simplexml($datas);
$dom->ownerDocument-
我有 XML 文件<xi:include
,加载为:
当我运行脚本时,只有那些<xi:include
没有错误的才会被加载/解析。
在另一台机器上,解析器能够处理主要的 XML 和所有包含的内容。如果出现错误,<xi:include
它会将它们连同它们的位置一起吐出。这有助于调试。
这看起来像配置问题,但无法在 php.ini 中找到何时更正它。
任何想法?
谢谢。
您可以尝试将该triggerSave()
函数添加到 TinyMCE 初始化中,以便在编辑器的更改事件中自动更新基础字段...
当您尝试通过 AJAX 发布表单时,这将消除执行此操作的需要。
更新:您的选择器是字符串还是 DOM 元素?根据我在您的代码中看到的
看起来您正在尝试提供一个 DOM 元素(或 jQuery 包装的 DOM 元素)。选择器参数需要一个字符串,如此处所述:
https://www.tinymce.com/docs/configure/integration-and-setup/#selector
如果你硬编码(作为测试)一个字符串,那行得通吗?