小编Dou*_*rch的帖子

xmlreader换行符\n而不是\ r \n

当我使用XmlReader.ReadOuterXml()时,元素由\n而不是\ r \n分隔.所以,例如,如果我有XmlDocument representatino

<A>
<B>
</B>
</A>
Run Code Online (Sandbox Code Playgroud)

我明白了

<A>\n<B>\n</B>\n</A>
Run Code Online (Sandbox Code Playgroud)

是否有指定换行符的选项?XmlWriterSettings有它,但XmlReader似乎没有这个.

这是我读取xml的代码.请注意,默认情况下,XmlWriterSettings具有NewLineHandling = Replace

XmlDocument xmlDocument = <Generate some XmlDocument>
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;

// Use a memory stream because it accepts UTF8 characters.  If we use a 
// string builder the XML will be UTF16.
using (MemoryStream memStream = new MemoryStream())
{
    using (XmlWriter xmlWriter = XmlWriter.Create(memStream, settings))
    {
        xmlDocument.Save(xmlWriter);
    }

    //Set the pointer back to the beginning of the stream to be read
    memStream.Position …
Run Code Online (Sandbox Code Playgroud)

.net newline xmlreader

11
推荐指数
2
解决办法
7440
查看次数

同构镜头

我会对van Laarhoven的同构镜头的一个小例子感兴趣,应用于数据类型data BValue = BValue { ? :: Float, ? :: Float, ? :: Float } deriving Show(特别是get/set/modify函数).先感谢您.

haskell

10
推荐指数
1
解决办法
1217
查看次数

在Windows Installer Commit中运行批处理文件

在安装主输出后,我没有成功修改Windows Installer MSI以运行批处理文件.我搜索过这个并找到了很多建议,但没有任何效果.

添加自定义操作
自定义操作只能是可执行文件.批处理文件不可执行.

创建运行批处理文件的Windows Scripting Host可执行文件
很多人都试图这样做,包括在SO上,没有人能够让它发挥作用.

使用WIX或InstallShield
我没有时间或权限来更改公司安装程序技术.

使用Orca编辑.msi并添加自定义属性,然后添加自定义操作,然后编辑InstallExecuteSequence,...
我已经尝试了几个小时,并且只创建了在运行它时抛出系统错误的安装程序.

windows windows-installer custom-action

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

C#SpeechSynthesizer使服务无响应

我有以下代码

[WebMethod]
public byte[] stringToWav(string text)
{
    SpeechSynthesizer ss = new SpeechSynthesizer();
    MemoryStream ms = new MemoryStream();
    ss.SetOutputToWaveStream(ms);
    ss.Speak(text);
    return ms.ToArray();
}
Run Code Online (Sandbox Code Playgroud)

并且该服务什么都不返回.知道为什么会这样吗?

c# web-services speechsynthesizer

6
推荐指数
2
解决办法
3289
查看次数

使用 ASP.NET core MVC/Razor 站点和 WebAPI 进行授权

我已经在我的应用程序的 API 部分实现了 JWT 身份验证/授权。我还有一个 ASP.NET core MVC 网站,我想对其进行身份验证。是否可以使用 API 中的 JWT 令牌对网站进行身份验证?我想阻止用户前往特定位置,除非获得授权,否则重定向到登录页面。我发现的所有示例都展示了如何使用 API (JWT) 或 MVC 网站 (cookie) 执行此操作,但不能同时使用两者。

c# asp.net-mvc asp.net-core asp.net-core-webapi

6
推荐指数
1
解决办法
970
查看次数

识别通过蓝牙与PixelSense配对的移动设备

我希望能够通过蓝牙将Microsoft PixelSense硬件与多个移动设备配对,我希望PixelSense知道哪个设备是哪个.因此,如果我将两部手机放在桌面上,PixelSense应该能够按设备名称标记它们.我最初的想法是让手机显示一个身份标签,该标签已编码其蓝牙MAC地址,以便它可以关联它们,但PixelSense看到红外线,无法读取手机屏幕,因此想法已经消失.谁能想到另一种方法呢?

bluetooth pixelsense

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

如何比较多维数组的相等性?

我知道你可以使用Enumerable.SequenceEqual来检查相等性.但是多维数组没有这种方法.关于如何比较二维数组的任何建议?

实际问题:

public class SudokuGrid
{
    public Field[,] Grid
    {
        get { return grid; }
        private set { grid = value; }
    }
}

public class Field
{
    private byte digit;
    private bool isReadOnly;
    private Coordinate coordinate;
    private Field previousField;
    private Field nextField;
}
Run Code Online (Sandbox Code Playgroud)

所有这些属性都在SudokuGrid构造函数中设置.因此,所有这些属性都有私人制定者.我想保持这种方式.

现在,我正在使用C#单元测试进行一些测试.我想比较Grids他们的价值2 ,而不是他们的参考.

因为我通过构造函数使用私有setter设置所有内容.类中的Equal覆盖SudokuGrid是正确的,但不是我需要的:

public bool Equals(SudokuGrid other)
{
    if ((object)other == null) return false;

    bool isEqual = true;

    for (byte x = 0; x …
Run Code Online (Sandbox Code Playgroud)

c# compare equals multidimensional-array

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

具有相同高度和背景颜色溢出容器的列

我想实现这个目标: 在此输入图像描述

要么

在此输入图像描述

优选仅在css中.

我四处搜索并阅读了这篇文章http://css-tricks.com/fluid-width-equal-height-columns/.然而,它并没有真正解决溢出容器问题的背景颜色.

css

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

从后台线程结果更新Winforms UI

这可能是一个愚蠢的问题,但我找不到stackoverflow的答案.

我在Winform应用程序中有一个按钮单击事件,该应用程序运行一个线程来计算结果以显示在表单中.

当线程计算结果时,如何更新Forms UI?

    private void btnRequestR2Approval_Click(object sender, EventArgs e)
    {
        if (User.IsLogged)
        {
            ValidationResults results = new ValidationResults();
            results.Show();

            Logger log = Logger.Instance();
            Logger.NewLogAddedHandler messageDelegate = new Logger.NewLogAddedHandler(results.NewLogMessage);

            if (!log.IsEventHandlerRegistered())
            {
                log.NewLogAdded += messageDelegate;
            }

            ThreadStart operation = new ThreadStart(ValidateAndSubmit);
            Thread theThread = new Thread(operation);
            theThread.Start();

        }
        else
        {
            MessageBox.Show("Please login");
        }

    }
Run Code Online (Sandbox Code Playgroud)

谢谢

.net multithreading winforms

4
推荐指数
1
解决办法
1万
查看次数

查找所有子元素的最大值并在XSLT中获取其父元素

使用下面的XML,我需要弄清楚哪个人在每个站点工作的时间更长.例如,在下面的XML中,人1在站点1中工作8小时但是人​​2工作仅6小时.因此,结果应包含转换后的XML中的person 1和site 1.如果小时数相等,请选择第一个人.

编辑:我希望使用XSLT 1.0实现.

<root>
    <WorkSite Person="P1" Site="S1">
        <Hours>8</Hours>
    </WorkSite>
    <WorkSite Person="P1" Site="S2">
        <Hours>2</Hours>
    </WorkSite>
    <WorkSite Person="P1" Site="S3">
        <Hours>9</Hours>
    </WorkSite>
    <WorkSite Person="P2" Site="S1">
        <Hours>6</Hours>
    </WorkSite>
    <WorkSite Person="P2" Site="S2">
        <Hours>10</Hours>
    </WorkSite>
    <WorkSite Person="P2" Site="S3">
        <Hours>2</Hours>
    </WorkSite>
</root>
Run Code Online (Sandbox Code Playgroud)

XSLT转换结果应如下所示:

<root> 
    <WorkSite Person="P1" Site="S1"/>  
    <WorkSite Person="P2" Site="S2"/> 
    <WorkSite Person="P1" Site="S3"/> 
</root>
Run Code Online (Sandbox Code Playgroud)

xml xslt

4
推荐指数
1
解决办法
1449
查看次数