[英]Fiddler/Jscript.NET :How do I append a string to specific search query?
[英]Forcing specific .NET types in JScript.NET?
我正在使用 Fiddler Web 调试器,它使用基于 JScript.NET 的FiddlerScript 。 我正在尝试进行一些简单的 .NET 字符串解析,但失败并显示错误“多个方法或属性与此参数列表匹配”。 例如:
var ahraw: String = "one, two, three, four";
var ah: Array = ahraw.Split([',', ' '], System.StringSplitOptions.RemoveEmptyEntries);
for (var i in ah) {
FiddlerObject.alert("\"" + ah[i] + "\"");
}
String.Split有这些原型:
Split(Char[], Int32, StringSplitOptions)
Split(String[], Int32, StringSplitOptions)
Split(String[], StringSplitOptions)
Split(Char[], StringSplitOptions)
Split(Char[], Int32)
Split(Char[])
即使我添加一个 Int32 并像ahraw.Split([',', ' '], 99, System.StringSplitOptions.RemoveEmptyEntries);
一样运行它ahraw.Split([',', ' '], 99, System.StringSplitOptions.RemoveEmptyEntries);
或ahraw.Split(", ", 99, System.StringSplitOptions.RemoveEmptyEntries);
它仍然可以找到多种方法。 是否可以强制使用特定的 .NET 类型? 类似var sep: String
东西也不起作用。
当然,还有其他方法可以在 JScript 中拆分字符串,例如 split()(注意小写的 s)。 我更感兴趣的是当我需要调用的函数没有等效的 javascript 时如何解决这个问题,所以我必须调用一个 .NET 函数。
正如评论中提到的,现在将 C# 用作脚本语言可能会更容易(可以在Tools -> Options -> Scripting -> Language
)。
但是,如果您已经/想要坚持使用 JScript.NET(例如,如果您已经进行了复杂的自定义),您可以通过为分隔符声明类型化数组来解决该问题,否则编译器无法区分Split(String[], StringSplitOptions)
和Split(Char[], StringSplitOptions)
重载来调用。
var ahraw: String = "one, two, three, four";
var separators: Char[] = [',', ' '];
var ah: Array = ahraw.Split(separators, System.StringSplitOptions.RemoveEmptyEntries);
for (var i in ah) {
FiddlerObject.alert("\"" + ah[i] + "\"");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.