小编Bas*_*sic的帖子

C#是一个重要项目的可行语言吗?

我已经使用C#一段时间了,我喜欢它与Windows的完美集成.C++中的Win32 API是一个怪物,但这是另一个故事.无论如何,我想知道,C#是一个"足够好"的语言用于大型项目吗?Microsoft是否在其任何应用程序中使用C#?我一直认为C++是大型项目的唯一选择,因为它的速度并且不需要CLR.

你对C#有什么看法?

编辑:大的我指的是像Microsoft Project这样的应用程序(我想到的第一个例子).它也可能意味着任务关键型应用程序.

c# c++ comparison programming-languages

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

MVC2站点中的主机WCF

我们有一个非常庞大,复杂的MVC2网站.我们想为一些内部工具添加API,并决定使用WCF.

理想情况下,我们希望MVC本身托管WCF服务.原因包括:

  • 虽然应用程序有多层,但我们在API中需要的一些功能需要网站本身(例如格式化电子邮件).
  • 我们使用TFS进行自动构建(持续集成)和部署 - 我们越少需要修改构建和发布机制
  • 我们在整个应用程序中使用Unity容器和Inversion of Control.作为网站的一部分,我们可以重用配置类和其他帮助方法.

我编写了一个自定义ServiceBehavior,后者又有一个自定义InstanceProvider - 这允许我实例化和配置一个容器,然后该容器用于为来自WCF的类实例的所有请求提供服务.

所以我的问题是; 是否可以从MVC本身托管WCF服务?

我以前只有服务/标准Asp.Net网站的经验,并没有意识到MVC2可能会有所不同,直到我真的试图将它连接到配置,没有任何反应.经过一些谷歌搜索,似乎没有很多参考这样做 - 所以我想在这里问.

更多详情:

感谢那些回复但我仍然遇到问题的人...我的当前配置如下所示:

<system.serviceModel>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true"
                               aspNetCompatibilityEnabled="true">
        <serviceActivations>
            <add relativeAddress="Job.svc"
                 service="MyApplication.WebJobManager"
                 factory="System.ServiceModel.Activation.WebServiceHostFactory" />
        </serviceActivations>
    </serviceHostingEnvironment>
    <extensions>
        <behaviorExtensions>
            <add name="WCFDIBehavior" type="MyApplication.Jobs.WCFDIBehaviorExtension, MyApplication.Jobs, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
        </behaviorExtensions>
    </extensions>
    <standardEndpoints>
        <mexEndpoint>
            <standardEndpoint name="WebJobManagerMex" />
        </mexEndpoint>
    </standardEndpoints>
    <behaviors>
        <serviceBehaviors>
            <behavior name="JobServiceBehavior">
                <serviceMetadata />
                <WCFDIBehavior />
            </behavior>
        </serviceBehaviors>
    </behaviors>
    <services>
        <service behaviorConfiguration="" name="MyApplication.Jobs.WebJobManager">
            <endpoint binding="basicHttpBinding"
              bindingConfiguration="" name="HTTPEndpoint" contract="MyApplication.JobService.Interfaces.IWebJobManager" />
        </service>
    </services>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)

如果有什么看起来明显错误,有人可以告诉我吗?

我期待找到端点http://localhost/MyApplication/Job.svc和元数据 …

asp.net-mvc wcf web-services asp.net-mvc-2

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

无法删除MySQL表

我需要从MySQL数据库中删除一个已弃用的空表.

表定义是noddy:

CREATE TABLE IF NOT EXISTS `Address` (
  `Id` int(11) NOT NULL AUTO_INCREMENT,
  `ContactId` int(11) NOT NULL,
  PRIMARY KEY (`Id`),
  KEY `ContactId` (`ContactId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
Run Code Online (Sandbox Code Playgroud)

这导致了

#1217 - Cannot delete or update a parent row: a foreign key constraint fails

ContactId有一个限制,但我已删除它.

PHPMyAdmin的导出函数不会显示除上面显示的表定义之外的任何内容.表中没有行,据我所知,没有FK引用该Address.Id字段(但我不知道如何验证这一点).

有人可以建议我如何摆脱桌子?

mysql sql foreign-keys

3
推荐指数
2
解决办法
6538
查看次数

从Java中的ArrayList获取唯一的元素对

我有一个ArrayList,它包含一系列整数(在另一个ArrayList中重新索引索引).

我需要提取每个唯一对,例如......

ArrayList = 1,4,5,7
Run Code Online (Sandbox Code Playgroud)

我需要:

1:4
1:5
1:7
4:5
4:7
5:7
Run Code Online (Sandbox Code Playgroud)

实现这一目标的最简单方法是什么?

java arraylist

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

正确地url编码用户代理

我是Python新手,似乎遇到了问题.我正在尝试urlencode用户代理字符串...

import urllib

UserAgent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.3 Gecko/2008092417 Firefox/3.0.3'
print 'Agent: ' + UserAgent
print urllib.urlencode(UserAgent)
Run Code Online (Sandbox Code Playgroud)

结果导致......

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.3 Gecko/2008092417 Firefox/3.0.3
Traceback (most recent call last):
  File "D:\Source\SomePath\test.py", line 7, in <module>
    print urllib.urlencode(UserAgent)
  File "C:\Python26\lib\urllib.py", line 1254, in urlencode
    raise TypeError
TypeError: not a valid non-string sequence or mapping object
Press any key to continue . . .
Run Code Online (Sandbox Code Playgroud)

我只能假设虽然UserAgent正确打印,但我要么在途中错过了一些字符串转义选项,要么犯了一个根本性的错误urllib.urlencode()

python string escaping urlencode

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

为什么这个jQuery没有点击?(带收音机按钮)

function showHideSoldTo() {
    if ($("#radio-text-sold-to").prop("checked")) {
        $("#select-sold-to").hide();
        $("#text-sold-to").show();
    } else if ($("#radio-select-sold-to").prop("checked")) {
        $("#text-sold-to").hide();
        $("#select-sold-to").show();
    }
}

$("#radio-text-sold-to").click(showHideSoldTo());
$("#radio-select-sold-to").click(showHideSoldTo());
Run Code Online (Sandbox Code Playgroud)

所有这些都在文档准备好的包装器中.

javascript jquery dom click radio-button

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

VS2010中64位Windows服务的部署包

我正在尝试为面向x64的Windows服务创建部署包.

我已经将安装项目本身定位为x64但我需要添加自定义操作来实际注册/取消注册服务.

但是,当我添加自定义操作并尝试运行安装程序时,我收到一个BadFormat异常,表明我的服务的可执行文件已损坏.

我怀疑我遇到了这里提到问题,但我无法证明这一点.

这个Windows服务正在开发中,作为使用TFS进行自动构建和部署,持续集成等的更大应用程序的一部分 - 因此,使用需要使用GUI的工具手动调整二进制文件的位是一个明确的禁忌.

那么......我需要知道的是; 是否可以在VS2010中为64位Windows服务自动构建部署包?如果是这样的话?

deployment 64-bit .net-4.0 visual-studio-2010

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

停止uwsgi执行harakiri(严重)

我一直在尝试查找uwsgi的问题,其中uwsgi进程会自行杀死。

如此有用的日志文件只是说...

F*CK !!! i must kill myself (pid: 9984 app_id: 0)...
Run Code Online (Sandbox Code Playgroud)

有点谷歌搜索使我进入源代码的这一行 ...

void harakiri() {
    uwsgi_log("\nF*CK !!! i must kill myself (pid: %d app_id: %d)...\n", uwsgi.mypid, uwsgi.wsgi_req->app_id);
    //Some other stuff
    exit(0);
}
Run Code Online (Sandbox Code Playgroud)

它是否死是不同的,但是(根据谷歌搜索)似乎与请求所花费的时间有关。在这种情况下,请求将流回动态生成的Pdf。生成发生在后台,但是一旦完成,就会有一个新的请求来检索它。Pdf可能很大(最坏的情况下为50-60MB),这取决于连接速度,这说明了为什么请求可能达到超时阈值的原因。

如何配置uwsgi使其永不超时或超时时间过长?该应用程序正在专用网络上使用,我宁愿它运行缓慢且成功而不是失败。

uwsgi python-3.x

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

了解如何通过UDP可靠地发送更大的数据块

多年来,我已经将TCP用于很多事情并且很好地理解它.我现在要求使用UDP.

简短版本:服务器允许少量客户端(5-10)连接.服务器正在运行模拟.客户端应该能够更新模拟的参数并查看(子集)模拟结果.

在这种情况下,定时(当参数改变时)很重要,并且请求改变的客户端和正在实现改变的客户端之间的延迟必须尽可能低.

我一直在 一个 大量 阅读,我仍然没有"得到它".

有人可以确认/否认我的理解......

  • 数据报存储在单个数据包中
  • 我可以可靠发送的最大有效负载是506字节(576 MTU - 60个IP报头 - 8个UDP报头)
  • 发送超过这个可能会导致碎片
  • 碎片不是在较低级别处理,并且需要我重新组合数据报(不确定这一点 - 如果它是自动处理的,为什么我关心碎片?)
  • 我需要实现自己的ACK/Throttling机制

所以...如果我想从客户端向服务器发送(比方说)800字节的数据,我需要:

  • 确定由客户端和服务器之间通用的字节(2)表示的任意"协议"ID,用于过滤掉不适合我的应用程序的消息.

客户

  • 创建随机消息ID
  • 将数据拆分为两个,添加消息ID和全局序列,以便它们可以在另一端重新加入
  • 根据内存中某处的序列ID记录数据
  • 将它们发送到服务器
  • 如果在给定的时间跨度内没有收到Ack(Say RTT*3),则重新发送该数据包.

服务器

  • 在模拟循环内部,如果套接字上有消息,请检查(非阻塞).
  • 如果是这样,立即发送回包含序列Id的ACK的新数据包(实际上,为了减轻Ack数据包丢失,我应该确认最后30个接收到的数据包)
  • 将数据包存储在内存中,直到我收到下半部分
  • 将两者结合起来处理有效载荷

对于向另一个方向发送的消息,我需要反过来做同样的事情.

我不禁感到我错过了一些东西,并且不太了解数据包分段的含义.有人可以澄清/指出更好的资源吗?

.net sockets networking udp

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

PHP CURL使用preg_match解析多个set-cookie头

我正在使用PHP/CURL来自动化两个紧密相关的代码点火器之间的调用.

代码点火器返回两个set-cookie标头,一个用于具有真实会话数据的安全cookie,一个用于具有空会话的不安全连接...

Set-Cookie: overshare=a%3A0%3A%7B%7D; expires=Thu, 17-Jun-2010 05:09:32 GMT; path=/
Set-Cookie: overshare=BdHJPVt...STsCxnMBj; path=/; secure
Run Code Online (Sandbox Code Playgroud)

我一直在尝试解析安全cookie(两个站点都在同一个域上,所以如果我通过CURL获得更新的会话信息,我应该更新客户端cookie,就像他们直接拨打电话一样)

我目前正在使用以下内容来解析cookie:

preg_match('/Set-Cookie: (.*)\b/', $Head, $Cookies);
Run Code Online (Sandbox Code Playgroud)

这给了我$Cookies:

Array
(
    [0] => Set-Cookie: overshare=a%3A0%3A%7B%7D; expires=Thu, 17-Jun-2010 05:09:32 GMT; path
    [1] => overshare=a%3A0%3A%7B%7D; expires=Thu, 17-Jun-2010 05:09:32 GMT; path
)
Run Code Online (Sandbox Code Playgroud)

但这只匹配第一个set-cookie标头.我的正则表达能力很差 - 如何匹配第二个标题?

php regex curl preg-match

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