小编spo*_*ots的帖子

区分大小写的词典键

我在网上发现了很多关于使字典能够进行不区分大小写查找的信息,如果我添加一个键/值对("A","value")调用

MyDict["a"] == MyDict["A"]
Run Code Online (Sandbox Code Playgroud)

将返回真实.

我想知道的是,当我这样做时,为什么我会收到"已添加密钥"错误

MyDict.Add("A", "value1");
MyDict.Add("a", "value2");
Run Code Online (Sandbox Code Playgroud)

如果我定义我的字典来做区分大小写的查找.有没有办法定义一个字典,以便能够添加不同的套管密钥?

c# dictionary key case-sensitive

8
推荐指数
2
解决办法
9252
查看次数

Oracle表空间最大化"无限"并非真正无限制

我最近需要将.dmp导入我创建的新用户.我还使用以下命令为用户创建了一个新的表空间:

create tablespace my_tablespace
 datafile 'C:\My\Oracle\Install\DataFile01.dbf' size 10M
 autoextend on
 next 512K
 maxsize unlimited;
Run Code Online (Sandbox Code Playgroud)

导入正在运行时出现错误:

ORA-01652 Unable to extend my_tablespace segment by in tablespace
Run Code Online (Sandbox Code Playgroud)

当我检查dba_data_files表中的数据文件时,我观察到maxsize大约是34gb.因为我知道数据库的一般大小,所以在将多个数据文件添加到表空间后,我能够毫无问题地导入.dmp.

当我添加的第一个数据文件设置为自动增长到无限大小时,为什么我需要向表空间添加多个数据文件?为什么最大尺寸为34gb而不是无限制?是否有34gb的硬帽?

oracle oracle11g tablespace

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

将listagg函数限制为前4000个字符

我有一个查询,使用该listagg函数将所有行作为逗号分隔的字符串,最终发送到一个大文本框.我收到以下异常:

ORA-01489: result of string concatenation is too long

我知道问题是正在运行以聚合数据的查询返回了很多行,listagg正在执行的字符串连接违反了4000 char限制.但是,对于我的用例,截断前4000个字符是完全可以接受的.

如何从此处修改此示例查询以将"值"列限制为最多4000个字符?

SELECT LISTAGG(product_name, ', ') WITHIN GROUP( ORDER BY product_name DESC) "Product_Listing" FROM products

你无法substr绕过调用listagg' becauselistagg throws the exception beforesubstr`被调用.

我已经看到很多关于如何绕过4000个字符限制的问题,但不限制结果值.

sql oracle string-concatenation varchar2 oracle11g

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

使用URI和Da​​taContract类参数编写webservice方法

如何获取Web服务方法来访问URI和复杂POST数据中的参数?

我有一个Web服务方法,在URI中有一些参数:

"/api/{something}/{id}"
Run Code Online (Sandbox Code Playgroud)

我还有一个标有DataContract/Member属性的类,我想让webservice方法接受.请注意,我的类包含一个也标有DataContract/Member属性的子类.

[DataContract]
public class MoreData{
    [DataMember]
    public string SomeString { get; set; }

    [DataMember]
    public SubClass SubData {get; set;}
}
Run Code Online (Sandbox Code Playgroud)

我的方法声明如下:

[OperationContract]
[WebInvoke( Method = "POST", UriTemplate = "/api/{something}/{id}")]
public MyWebSvcRetObj Update(string something, string id)
Run Code Online (Sandbox Code Playgroud)

我如何让我的Update方法也接受MoreData类?我已经能够编写如下方法:

[OperationContract]
[WebInvoke( Method = "POST")]
public MyWebSvcRetObj Update(MoreData IncomingData)
Run Code Online (Sandbox Code Playgroud)

但只有当URI没有指定任何参数时,URI才会显示

"api/Update"
Run Code Online (Sandbox Code Playgroud)

最终,我希望我的用户能够像:

$.ajax({
    url: 'localhost/site/api/things/12345
    type: 'POST'
    data: {
        SomeString: 'I am a string'
        SubData: {
           //...more data
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

我已经尝试将Stream作为Update方法中的最后一个参数,但这似乎不适用于具有子类的类,如我给出的示例.它最终具有键/值对,如"SubData [SomeSubDataProp]":"Val".这对我来说似乎不对.我还尝试在Update方法中添加一个MoreData参数作为最后一个参数,但是我得到一个错误,表示它期待一个流(因为它期望原始数据).我正在尝试做什么?或许我会以错误的方式解决这个问题?

UPDATE

正如Faizan Mubasher所写,如果我的网络方法如下所示,我的用户将能够发送帖子数据:

[OperationContract]
    [WebInvoke( Method = "POST", …
Run Code Online (Sandbox Code Playgroud)

c# rest wcf web-services datacontract

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

Javascript Regex对象无法识别{n,m}

我正在尝试在JS中编写一个正则表达式来识别任何数字,最多七次,然后是" - "后跟2位数后跟" - "后跟一位数字.这是我的简单正则表达式:

/\d{1,7}-\d{2}-\d/g
Run Code Online (Sandbox Code Playgroud)

这应该符合以下字符串:

  • 123-12-7
  • 1-12-7
  • 1234567-12-7

但不是 12345678-12-1

但是,以上情况正在回归.当第一组中有任意数量的数字时,正则表达式返回true.

JavaScript Regex对象不支持{n,m}吗?

这是我正在谈论的一个例子.

var pattern = new RegExp(/\d{1,7}-\d{2}-\d/);
alert(pattern.test("12345678-13-1"));
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/XTRAc/1/实例

javascript regex

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