问题列表 - 第35314页

Dispatcher BeginInvoke语法

我一直在尝试遵循一些WCF数据服务示例并具有以下代码:

private void OnSaveCompleted(IAsyncResult result)
    {
        Dispatcher.BeginInvoke(() =>
        {
            context.EndSaveChanges(result);
        });
    }
Run Code Online (Sandbox Code Playgroud)

以下称为:

this.context.BeginSaveChanges(SaveChangesOptions.Batch, this.OnSaveCompleted, null);
Run Code Online (Sandbox Code Playgroud)

现在我在这里有点困惑.首先,第一位代码显示语法错误"参数类型lambda表达式不能分配给参数类型System.Delegate".因此,我没有盲目地尝试遵循示例代码,而是试图了解这里发生了什么.不幸的是,我正在努力理解错误加上实际发生的事情.

我觉得有点愚蠢,因为我确信这很容易.

提前感谢任何启蒙!

.net c# multithreading wcf-data-services

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

将XML插入SQL Server时如何解决"无法切换编码"错误

我正在尝试插入XML列(SQL SERVER 2008 R2),但服务器抱怨:

System.Data.SqlClient.SqlException(0x80131904):
XML解析:第1行,第39个字符,无法切换编码

我发现XML列必须是UTF-16才能使插入成功.

我正在使用的代码是:

 XmlSerializer serializer = new XmlSerializer(typeof(MyMessage));
 StringWriter str = new StringWriter();
 serializer.Serialize(str, message);
 string messageToLog = str.ToString();
Run Code Online (Sandbox Code Playgroud)

如何将对象序列化为UTF-8字符串?

编辑:好的,抱歉混淆 - 字符串需要是UTF-8.你是对的 - 默认情况下它是UTF-16,如果我尝试以UTF-8插入它就会通过.所以问题是如何序列化为UTF-8.

这会在尝试插入SQL Server时导致错误:

    <?xml version="1.0" encoding="utf-16"?>
    <MyMessage>Teno</MyMessage>
Run Code Online (Sandbox Code Playgroud)

这不是:

    <?xml version="1.0" encoding="utf-8"?>
    <MyMessage>Teno</MyMessage>
Run Code Online (Sandbox Code Playgroud)

更新

我想出当SQL Server 2008的Xml列类型需要utf-8时,以及当encoding你尝试插入xml规范的属性中的utf-16时:

如果要添加utf-8,请将参数添加到SQL命令,如下所示:

 sqlcmd.Parameters.Add("ParamName", SqlDbType.VarChar).Value = xmlValueToAdd;
Run Code Online (Sandbox Code Playgroud)

如果您尝试encoding=utf-16在上一行中添加xmlValueToAdd,则会在插入中产生错误.此外,VarChar意味着国家字符不被识别(它们变成问号).

要将utf-16添加到db,请使用SqlDbType.NVarCharSqlDbType.Xml在前面的示例中,或者根本不指定type:

 sqlcmd.Parameters.Add(new SqlParameter("ParamName", xmlValueToAdd));
Run Code Online (Sandbox Code Playgroud)

.net xml sql-server utf-8 utf-16

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

是否有LINQ等效方法?

我知道LINQ有一个SequenceEquals方法.此方法确保每个集合中的每个项目值以相同的顺序匹配.

我正在寻找的是更"等效"的功能.只是两个序列包含相同的项目,不一定是相同的顺序.

例如,NUnit的有CollectionAssert.AreEqual()CollectionAssert.AreEquivalent()这做我解释.

我知道我可以通过以下方式做到这一点:

  1. 提前订购列表并使用 SequenceEquals
  2. 使用Intersect,然后查看交集是否等于原始序列.

例:

var source = new[] {5, 6, 7};
source.Intersect(new[] {5, 7, 6}).Count() == source.Length;
Run Code Online (Sandbox Code Playgroud)

.net c# linq

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

类不符合键值编码

我知道这个错误的意思,但我真的很挣扎,我需要别人的帮助:

2010-09-21 15:03:11.562 Stocks[5605:207] *** Terminating app due to uncaught 
exception 'NSUnknownKeyException', reason: '[<NSObject 0x499fb20> 
setValue:forUndefinedKey:]: this class is not key value coding-compliant 
for the key actionText.'
Run Code Online (Sandbox Code Playgroud)

这里有我的代码:

AlertCell.h

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>


@interface AlertCell : UITableViewCell {
    IBOutlet UILabel *actionText;
}

@property (retain, nonatomic) UILabel *actionText;

@end
Run Code Online (Sandbox Code Playgroud)

AlertCell.m

@implementation AlertCell
@synthesize actionText;

- (void)dealloc {
    [actionText release];
    [super dealloc];
}

@end
Run Code Online (Sandbox Code Playgroud)

问题发生在那里:

- (UITableViewCell *)tableView:(UITableView *)tableView 
         cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *CellIdentifier = @"Cell";

    AlertCell *cell = 
      (AlertCell …
Run Code Online (Sandbox Code Playgroud)

iphone key uitableview

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

从字符串中删除新行并替换为一个空格

$string = "
put returns between paragraphs

for linebreak add 2 spaces at end

";
Run Code Online (Sandbox Code Playgroud)

想要从字符串中删除所有新行.

我有这个正则表达式,它可以捕获所有这些,问题是我不知道我应该使用哪个函数.

/\r\n|\r|\n/
Run Code Online (Sandbox Code Playgroud)

$string 应成为:

$string = "put returns between paragraphs for linebreak add 2 spaces at end ";
Run Code Online (Sandbox Code Playgroud)

php regex string

269
推荐指数
11
解决办法
43万
查看次数

从版本5.0.3开始,在mysql表的十进制字段中存储负数

  1. 我的表有几个字段,其数量列为decimal.
  2. 此列将具有存款金额(正值)或提款金额(负值).
  3. 我将正值存储为120,将负值存储为-50.
  4. 我总结了这一列并得到了预期的结果.
  5. Mysql版本是:5.1.33-community.
  6. 当我检查关于十进制的mysql文档我与他们的描述混淆.

  7. 在MySQL 5.0.3之前,如果将+0003.1插入到DECIMAL(5,1)列中,则将其存储为+0003.1.从MySQL 5.0.3开始,它存储为3.1.对于负数,不再存储文字字符.必须修改依赖于旧行为的应用程序以解决此更改.http://dev.mysql.com/doc/refman/5.0/en/precision-math-decimal-changes.html

  8. 当我在phpmyadmin中列出行时,我可以看到负号,当我计算结果时,正如预期的那样.但文件说不会出现任何迹象.

  9. 以十进制存储负数是不是很好(我没有在学校学过?迷茫)?...或者我们必须使用浮点数.

  10. 我知道浮动会使计算变得复杂,并建议在某些条件下坚持使用小数.

    我想对此提出建议.

mysql types

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

正则表达式匹配ldap连接字符串

我需要从这样的LDAP连接字符串中提取信息:

ldap://uid=adminuser,dc=example,c=com:secret@ldap.example.com/dc=basePath,dc=example,c=com
Run Code Online (Sandbox Code Playgroud)

我想使用一个正则表达式,它将为我提取每个标记并将其放在一个数组中.我尝试了一些正则表达式,我得到的最好的是:

/(\w+)\:\/\/(([a-zA-Z0-9]+)(:([^\:\@]+))?@)?([^\/]+)((\/[^#]*)?(#(.*))?)/
Run Code Online (Sandbox Code Playgroud)

但不幸的是,当我在PHP中执行它时,我得到以下结果:

Array
(
    [0] => ldap://uid=adminuser,dc=example,c=com:secret@ldap.example.com/dc=basePath,dc=example,c=com
    [1] => ldap
    [2] => 
    [3] => 
    [4] => 
    [5] => 
    [6] => uid=adminuser,dc=example,c=com:secret@ldap.example.com
    [7] => /dc=basePath,dc=example,c=com
    [8] => /dc=basePath,dc=example,c=com
)
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我,以便我能正确提取连接字符串的每个部分吗?

谢谢

php regex ldap

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

替换Google的GeoMap

谷歌的GeoMap是否有一个不错的非闪存替代品?我正试图"推"重绘,但因为它是闪存,它必须运行回Google,渲染一个flash对象,然后替换它.

javascript google-visualization geomap

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

为什么[NonSerialized]不能处理自动实现的属性?

[Serializable]
class MyClass
{
    [NonSerialized] int Foo { get; set; } // error
    [NonSerialized] int bar; // ok
}
Run Code Online (Sandbox Code Playgroud)

为什么不允许这样做?

我知道诸如此类的解决方法

  • 实现ISerializable
  • 切换到XmlSerializer/XmlIgnore
  • 切换到手动实现的属性

问题是具体为什么 [NonSerialized]不允许在本地使用,但允许在字段上使用.

.net serialization .net-3.5 nonserializedattribute

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

erlang如何容错,或者在这方面有所帮助?

erlang如何容错,或者在这方面有所帮助?

erlang

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