小编Svi*_*ish的帖子

XSLT中的数字变量/参数

我有这个XSLT:

<xsl:template match="/">

    <xsl:variable name="errorCount" select="count($orders/*[1]/cm:Error)" />

    <xsl:apply-templates select="@*|node()">
        <xsl:with-param name="errorCount" select="$errorCount" tunnel="yes" />
    </xsl:apply-templates>
</xsl:template>

<xsl:template match="status">
    <xsl:param name="errorCount" tunnel="yes" />
    <xsl:copy>
        <xsl:choose>
            <xsl:when test="$errorCount > 0">
                <xsl:text>ERROR</xsl:text>
            </xsl:when>
            <xsl:otherwise>
                <xsl:text>OK</xsl:text>
            </xsl:otherwise>
        </xsl:choose>
    </xsl:copy>
</xsl:template>
Run Code Online (Sandbox Code Playgroud)

隧道和所有似乎都工作,但转换失败,出现以下错误:

'>'的第一个操作数的必需项类型是数字; 提供的值具有项类型xs:string

我首先在模板中使用了变量声明,然后它才能正常工作.移动它因为我需要在其他模板中使用相同的计数.

如何/在哪里声明这个变量/参数实际上是一个数字?

xslt variables parameters tunneling

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

只允许某种类型的密钥

我有这个简单的函数可以按日期对对象进行排序。但目前我必须在进行比较之前检查该字段是否实际上是日期。在这种情况下,有没有办法限制K只允许某种类型的密钥Date

const compareDate = <T, K extends keyof T>(key: K) => (x: T, y: T) => {
  const v = x[key];
  const w = y[key];
  return v instanceof Date && w instanceof Date ? v.getTime() - w.getTime() : 0;
};

list.sort(compareDate('dateField'));

Run Code Online (Sandbox Code Playgroud)

我想要的是:

const compareDate = <T, K extends ???>(key: K) => (x: T, y: T) => {
  // ts should know and only allow x[key] and y[key] to be of type Date here:
  return x[key].getTime() - …
Run Code Online (Sandbox Code Playgroud)

generics typescript keyof

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

您如何阻止用户在TextBox中添加/删除行?

您如何阻止用户在TextBox中添加或删除行?我的意思是,如果我将文本框中的文本设置为带有一些文本的7行,我怎样才能确保它总是有7行文本?用户必须能够像往常一样编辑这些行,但不能完全删除行,也不能添加任何新行.

必须考虑键盘输入以及剪切和粘贴等内容.

有什么好主意吗?


原因:我想让文件重命名类似于奥斯卡的重命名.你给它一个文件夹,它将文件名加载到一个文本框中,你可以在文本框中进行更改,就像在文本编辑器中一样.当您对更改感到满意时,请将其写回.n文本框中常量行的原因当然是该行n是文件的名称n.不应该允许添加新行,因为您只在该文件夹中包含这些文件.也不允许删除行,因为您将丢失文件的名称.

为什么在它已经存在时会遇到制造这样的东西的麻烦?好吧,我很想知道我是否可以做到这一点,并认为沿途学习一些东西可能是一个很好的练习.因为它有一些需要解决的有趣问题.像这一个:)我认为奥斯卡的重命名者也缺少一些功能.所以...总结一下:我正在做这个学习并尝试制作更好的版本.我完全知道我可能也完全失败,或者只是永远不会完成它:p但这是另一个故事.我想学习

c# winforms

0
推荐指数
1
解决办法
901
查看次数

在C#代码中使用块有什么意义?

我看到了大量带有以下语法的代码片段

using (RandomType variable = new RandomType(1,2,3))
{
   // A bunch of code here.

}
Run Code Online (Sandbox Code Playgroud)

为什么不只是声明变量并使用它?

这种使用语法似乎只是使代码混乱并使其可读性降低.如果重要的是那个变量只在那个范围内可用,为什么不把这个块放在一个函数中呢?

c# using-statement

0
推荐指数
2
解决办法
594
查看次数

<pre> <code>中的字符是否应该被html编码?

在html中编写文档需要一些代码示例.做什么用的,应与被替换的字符&amp;&gt;等?他们也应该在这种情况下进行编码吗?当我在<pre><code>标签内部有这些字符时,它们就像我应该看到的那样显示出来.

html

0
推荐指数
1
解决办法
1312
查看次数

C#:当我们没有指定泛型时,为什么泛型不能使用最通用的类​​型?

例如,我现在创建了一个这个小类:

public static class FileSystemInfoComparers<T> where T : FileSystemInfo
{
    public static IEqualityComparer<T> FullName
    {
        get { return new FullNameComparer(); }
    }

    private class FullNameComparer : IEqualityComparer<T>
    {
        public bool Equals(T x, T y)  { return x.FullName == y.FullName;   }
        public int GetHashCode(T obj) { return obj.FullName.GetHashCode(); }
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我能这样做,我想要它

var comparer = FileSystemInfoComparers.FullName;
Run Code Online (Sandbox Code Playgroud)

并且有一个实例IEqualityComparer<FileSystemInfo>,因为我没有指定任何类型和FileSystemInfo是最通用的类​​型T可以.没有类型约束,默认类型可以是例如对象或其他东西.

也许不是最好的例子,但无论如何只是在这里好奇:p

c# generics

0
推荐指数
1
解决办法
196
查看次数

如何使用c#复制和保存音频文件?

我想使用c#复制并粘贴音频文件?

    Int32 intAudioSize = 0;
    string strAudioType = null;
    Stream AudioStream = null;

    // Gets the Size of the Audio
    intAudioSize = FileUpload1.PostedFile.ContentLength;

    // Gets the Audio Type
    strAudioType = FileUpload1.PostedFile.ContentType;

    // Reads the Audio
    AudioStream = FileUpload1.PostedFile.InputStream;
Run Code Online (Sandbox Code Playgroud)

c#

0
推荐指数
1
解决办法
1714
查看次数

不同风格的JUnit?

我正在尝试重新编写Java,并学习如何使用Maven和JUnit.在Maven 快速启动后,我在控制台中运行了以下命令:

mvn archetype:generate \
 -DgroupId=com.mycompany.app \
 -DartifactId=my-app \
 -DarchetypeArtifactId=maven-archetype-quickstart \
 -DinteractiveMode=false
Run Code Online (Sandbox Code Playgroud)

然后,我在其正确的文件夹中获得了一个简单的App.java和AppTest.java.我现在正在查看AppTest.java并试图找出如何使用这个JUnit的东西.问题是我不理解它,而且我看起来与我在JUnit Cookbook中看到的完全不同.例如,我从Maven获得的版本具有不同的包名称,并且没有测试方法的注释.

这里发生了什么?Maven是否使用了除常规JUnit之外的其他东西?或者只是做一些奇特的事情?


更多信息

Apache Maven 3.0.2(r1056850; 2011-01-09 01:58:10 + 0100)
Java版本:1.6.0_23,供应商:Sun Microsystems Inc.

AppTest.java

package com.mycompany.app;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;

/**
 * Unit test for simple App.
 */
public class AppTest extends TestCase {
    /**
     * Create the test case
     * 
     * @param testName
     *            name of the test case
     */
    public AppTest(String testName) {
        super(testName);
    }

    /**
     * @return the suite …
Run Code Online (Sandbox Code Playgroud)

java junit maven

0
推荐指数
1
解决办法
354
查看次数