小编Edd*_*ddi的帖子

C# XmlSerializer:在嵌套对象上创建 xmlns 属性

我想要使​​用的 API 要求我xmlns在嵌套元素上设置 -attribute,如下所示:

<root>
   <mainelement>
   </mainelement>
   <mainelement>
      <subelement xmlns="http://example.com/xml" otherAttr="value">
      </subelement>
   </mainelement>    
</root>
Run Code Online (Sandbox Code Playgroud)

的类subelement定义如下:

public class subelement
{
    [XmlAttribute]
    public string otherAttr { get; set; }
    [XmlAttribute]
    public string xmlns { get; set; } = "http://example.com/xml";
}
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用 XmlSerializer 序列化根对象时, -xmlns属性始终丢失。否则它工作正常。xmlns当我重命名它创建的这个属性时,所以我猜它与保留关键字有关。

另外,我无法使用将命名空间设置为方法的第三个参数的标准方法,Serialize因为我只想将此属性位于subelement对象上。

有没有办法在序列化后无需手动编辑文件来完成此任务?

c# xml xml-serialization

5
推荐指数
1
解决办法
2423
查看次数

XSL-FO根据页面位置的不同页眉/页脚

这可能是XSL-FO的一个相当普遍的问题:我尝试构建一个具有明确规范的计费:

  1. "主标题":每页(文字,标识和条形码)
  2. "子标题":(客户数据)

    - >在第一页上,这个块应该是页面高度的10%左右

    - >在所有其他页面上,这个块应该是大约一半,所以让我们说5%

  3. "最后一页页脚":当然是最后一页(总金额和签名)

  4. "每页页脚":仅适用于打印日期

  5. "正文":计费内容(每个位置)应自动在所有页眉和页脚之间流动

所以我知道通过使用属性page-position可以实现一些要点:

<fo:page-sequence-master master-name="masterSequenceName1">
<fo:repeatable-page-master-alternatives>
  <fo:conditional-page-master-reference master-reference="masterNamePageFirst1" page-position="first"></fo:conditional-page-master-reference>
  <fo:conditional-page-master-reference master-reference="masterNamePageLast1"  page-position="last"></fo:conditional-page-master-reference>
  <fo:conditional-page-master-reference master-reference="masterNamePageAny"    page-position="any"></fo:conditional-page-master-reference>
</fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
Run Code Online (Sandbox Code Playgroud)

我可以为每个案例定义区域,但遇到以下问题:

  1. 如果第一页是最后一页(仅一页),则不会显示最后一页页脚.知道页面位置可以具有"仅"值,可能性也是为此设置静态内容.但是我仍然会有两个相同内容的块,每当我想编辑这个部分时,我都要改两次.
  2. 主标题通常可以通过区域设置 - 之前引用page-position ="any"(这是标准),但不知何故这对我来说不起作用.我只是在不是第一页或最后一页的页面上得到标题.这不应该是页面位置="休息"的理想功能吗?

xslt xsl-fo apache-fop

2
推荐指数
1
解决办法
8818
查看次数

标签 统计

apache-fop ×1

c# ×1

xml ×1

xml-serialization ×1

xsl-fo ×1

xslt ×1