小编Tom*_*Tom的帖子

如何将斜杠和其他"url敏感"字符传递给WCF REST服务?

我有一个REST WCF服务,它有一个获取参数作为字符串的方法.该字符串可以包含斜杠/字符.它使我的请求错误,因为我认为URL出错了.

在请求它并获得响应时(WebRequest.GetResponse())抛出"远程服务器返回错误:(400)错误请求." 例外.

我的要求:http:// localhost:17679/testmethod/DmC/TCGlOLz1EbEwqAls5Q == \nh2cQzTizSBg =

我试图使用Uri.EscapeDataString,但它没有帮助,我得到与上面相同的例外.在此转换后,我的请求如下所示: http:// localhost:17679/testmethod/DmC%2FTCGlOLz1EbEwqAls5Q%3D%3D%0Ah2cQzTizSBg%3D

如果我在字符串中传递没有斜杠的字符串,它可以按我的意愿工作.

如何将斜杠和其他"url敏感"字符传递给WCF REST服务?

谢谢.

更新:我解决了,你可以在我的答案中看到它.

c# url wcf visual-studio-2010

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

在64位Win上缺少dll

我有一个.net应用程序,它使用一些vc ++编译的Win32 dll.它在32位Win上工作得很好,但在64位上存在一个问题:"无法加载DLL'xyz':找不到指定的模块.(HRESULT异常:0x8007007E)"

使用依赖walker我发现它错过了以下dll:MSVCP100.DLL,MSVCR100.DLL,GDIPLUS.DLL,GPSVC.DLL,IESHIMS.DLL

如何将它们安装到我的64位Win?我应该把它们放在哪里?我应该注册吗?要么...?

注意,我的项目是为x86平台编译的,它是从Program Files(x86)文件夹作为32位应用程序运行的.我的dll在Visual Studio 2010中通过Visual C++被命名为Win32.

请注意,由于其他一些原因,我的dll无法获得64版本的任务,因此它不是一个解决方案.

谢谢!

.net c++ dll

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

定义MIB并在.net下发送SNMP陷阱

我已经为C#中的.net公司开发了一个特殊的应用程序,它已经使用多年了.现在它开发了,我必须实现的一个主要新功能是通过在某些警报情况下向其发送SNMP陷阱来将其与另一个软件集成.

我是一名经验丰富的开发人员,但我从未使用过SNMP.我搜索了一整天,但对这个话题越来越困惑.我没有明确的"起点".我理解SNMP的基础知识,但我不知道在哪里以及如何开始实现.

我有通过SNMP陷阱发送的数据,它有10个属性,一些日期,数字和字符串.我应该在这个属性上创建MIB定义.稍后我应该在我的应用程序中实现一个基于此MIB发送SNMP陷阱的功能.

该项目是在c#的.net 4下开发的.我发现这个库看起来很有希望:http://sharpsnmplib.codeplex.com/ 它有一些关于发送SNMP陷阱的示例.

我的问题是:从哪里开始?如何定义MIB文件?我知道他们是一些必须编译的文本文件,但没有找到任何MIB编辑器和帮助这个主题.

任何帮助表示赞赏!

谢谢!

.net snmp mib sharp-snmp snmp-trap

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

高性能C#TCP服务器问题:无法建立连接,因为目标计算机主动拒绝它

我根据你的建议开发了一个TCP服务器:C#中的高性能TCP服务器

它基于异步模式.

我还开发了一个压力测试应用程序来测试它的性能.我的服务器可以从压力测试应用程序中获得数千个连接,可以解析数据并将其保存到我的数据库中.

当我强调我的服务器时,我可以获得"System.Net.Sockets.SocketException"无法建立连接,因为目标计算机主动拒绝它"来自我的服务器的错误,所以我必须重新连接它.如果我用5000测试它并发连接,我必须再次尝试连接因为这个问题10-20%的连接,如果我用10K并发连接测试它,它可以是30-40%.有时它可以 - 很少 - 超过50它似乎无法处理连接接受:我从我的压力测试中获得与我的测试机器一样多的新连接 - 大约120个连接/秒.

那么,是什么导致这种异常呢?怎么处理?在服务器端实现中可以做些什么来避免这个问题?如何调整TCP连接接受?

提前致谢!

c# connection tcp exception

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

快速查找List <T>

我有两个通用列表.让我们说他们是List< A >List< B >.

A有一个属性,类型是List< B >.此属性包含B类型对象,这些对象由对象的其他一些属性进行过滤A.

所以:

class A{
  public int Something1;
  public int Something2;
  public List<B> Something3;
}

class B{
  public int Anything1;
  public int Anything2;
}
Run Code Online (Sandbox Code Playgroud)

我想将所有对象B作为列表添加到对象A(称为Property Something3),其中让我们说对象A.Something1 == B.Anything1.

我的问题是:向List<B>项目添加项目的最有效方法是什么List<A>?请注意,两个列表中可能有数十万个对象.

(VS2010; C#; .Net4)

.net c# lookup list

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

Windows应用商店应用的免费映射组件?

我一直在我的.net项目中使用开源GIS和映射组件,如sharpmap,mapnik,brutile.我主要在winforms应用程序中使用它们,现在我正在为windows store('Metro'样式桌面)应用程序寻找这些组件.由于许可问题,Bing地图控件不适合我.

到目前为止,我还没有发现任何windows store app有针对性的映射免费组件.你知道吗?您是否知道我可以参与此主题的开源项目?

c# gis map windows-store-apps

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

MS图雷达轴频率

我想在WinForms应用程序中使用MS Chart控件绘制雷达图表.

此图表包含1天的数据,我有每秒的数据,所以我有86 400 xy值对.X轴包含日期,y我的int值.

我的测试代码是这样的:

var fromDate =  new DateTime(DateTime.Now.Year,
                                         DateTime.Now.Month,
                                         DateTime.Now.Day,
                                         0,
                                         0,
                                         0);

            var toDate = new DateTime(DateTime.Now.Year,
                                      DateTime.Now.Month,
                                      DateTime.Now.Day,
                                      23,
                                      59,
                                      59);

            List<DateTime> xValues = new List<DateTime>();
            List<double> yValues = new List<double>();

            var iterDate = fromDate;
            var i = 0;

            while (iterDate <= toDate)
            {
                xValues.Add(iterDate);
                yValues.Add(i);

                iterDate = iterDate.AddSeconds(1);
                i++;
            }

            chart1.Series["Default"].Points.DataBindXY(xValues, yValues);

            var dateLabelStyle = new LabelStyle();
            dateLabelStyle.Format = "HH:mm:ss";
            chart1.ChartAreas["Default"].AxisX.LabelStyle = dateLabelStyle;

            chart1.ChartAreas["Default"].AxisX.Minimum = fromDate.ToOADate();
            chart1.ChartAreas["Default"].AxisX.Maximum = toDate.ToOADate();

            chart1.Series["Default"].IsXValueIndexed = true;
            chart1.Series["Default"].ChartType = …
Run Code Online (Sandbox Code Playgroud)

c# mschart winforms radar-chart

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

UserNamePasswordValidator中的客户端IP地址

我有一个WCF REST休息服务,由Windows服务托管.它使用自定义UserNamePasswordValidator身份验证.

我想在验证时获取客户端IP地址:

ublic static string GetClientIPAddress()
    {
        try
        {
            var context = OperationContext.Current;
            var prop = context.IncomingMessageProperties;
            var endpoint = prop[RemoteEndpointMessageProperty.Name] as RemoteEndpointMessageProperty;
            return endpoint.Address;
        }
        catch (System.Exception exc)
        {
            Debug.Assert(false,exc.Message);
            return string.Empty;
        }
    }
Run Code Online (Sandbox Code Playgroud)

但它抛出异常,因为在这种情况下上下文为空.我怎么解决这个问题?注意,大多数建议的asp.net兼容模式不是一个选项,我的服务由WIndows服务托管,而不是由IIS托管.

谢谢!

.net c# wcf

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

MFMessageComposeViewController打开MMS编辑而不是短信和"好友名称"文本而不是电话号码

我开发了一个带有功能的IOS应用程序,它将带有源代码生成文本的SMS发送给源代码生成的电话接收者.

对于~100个用户来说,它可以工作好几个月,但现在我遇到了一个有趣的错误:当SMS UI出现时,而不是我传递给它的电话号码,有一个"好友名称"文本,而不是SMS,消息类型是MMS.它发生在带有IOS 7的iPhone 4上.

我使用它的方式(电话号码是NSString):

NSArray* recipients = [NSArray arrayWithObject:telephoneNumber];

MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init];
if([MFMessageComposeViewController canSendText])
{
    controller.body = message;
    controller.recipients = recipients;
    controller.messageComposeDelegate = self;
    [self presentViewController:controller animated:YES completion:nil];
}
Run Code Online (Sandbox Code Playgroud)

有没有更多的设置,方法调用(...)来避免这种奇怪的行为?

非常感谢!

sms objective-c ios mfmessagecomposeviewcontroller

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

在 IOS 上从后台重新激活后,Flutter 应用程序 UI 被冻结

我有一个在 Flutter 中开发的应用程序,从后台激活时,我在 IOS 上遇到了一些问题。

在 IOS 上启用了使用位置后台模式。它在后台工作没有任何问题,即使是几天,它也能完成它必须做的事情。但是当我在后台工作较长时间(大约一天或更长时间)后打开应用程序时,UI 被冻结!请注意,如果我在几个小时后这样做,没关系,问题会在更长的时间后出现。

Flutter 版本:[?] Flutter(通道稳定,1.20.1,在 Mac OS X 10.15.5 19F101,语言环境 hu-HU)

我能做些什么来修复它?我应该在 Flutter 中以某种方式重新初始化 UI 吗?或者从本地做任何事情?

非常感谢,任何帮助都非常受欢迎!

lifecycle background ios flutter

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