我们最初没有使用任何日志记录或调试跟踪,但在花了几周时间追踪一些数据损坏后,我们决定将生成所需的Debug.Write和Trace以及Debug.Assert
那么现在问题是使用调试和跟踪日志记录的最佳实践是什么.我只是在寻找一些通用的东西.
public void AddRectodatabase(object record)
{
Debug.WriteLine(record.ToString());
Trace.WriteLine(record.ToString());
// Add it to databse
Debug.Assert(true, "Use this on case by case basis");
}
Run Code Online (Sandbox Code Playgroud)
这对于一般用途是否足够好,我在那里做错了吗?
我们希望坚持.net System.Diagnostics而不是像log4net这样的其他选择.
System.Diagnostics中还有其他有用的东西吗?
在.net中是否有ZooKeeper的替代方案?除了用于类似的东西的数据库以外.
我们需要它来进行领导者选择并确保一个项目仅被处理一次并且各种分布式状态共享.
我的默认文件是在子文件夹而不是root中如何在asp.net 2.0网站中将其设为默认值.
尝试将iis7默认文档设置为'/pages/default.aspx''〜/ pages/default.aspx',但它不起作用.
我们使用或foreach循环收集并处理每个条目.
在C#中集合的所有新lambda函数中是否有任何替代方法?
传统的做事方式
foreach(var v in vs)
{
Console.write(v);
}
Run Code Online (Sandbox Code Playgroud)
有什么相似的吗?
vs.foreach(v => console.write(v))
Run Code Online (Sandbox Code Playgroud) 是否所有SMTP通信都在port25上的域之间发送电子邮件?所有通信都是无担保的吗?了解使用类似Gmail通信的安全保护Gmail服务器,但必须使用不安全的端口25,对吗?
SMTP可以在任何端口上,但这不是我所说的.我不是在谈论连接到Gmail,Yahoo或ISP SMTP服务器.这些是SMTP中继,它们接受任何希望为其用户加密/未加密的端口的SMTP请求.
但是一旦SMTP中继服务器收到请求,邮件服务器就会根据域名MX记录将其转发到电子邮件.它只在端口25上使用SMTP吗?邮件服务器只知道域名,然后转发它.它无法知道他们正在收听哪个端口.
例如,我正在为我的域托管Exchange服务器2007.我连接到我的Exchange服务器以发送邮件到xyz@gmail.com.我的交换服务器必须通过行业标准协议进行通信,对吧?这是端口25(因为我的Exchange服务器没有端口25就无法工作).
我有从net 3.5移植的.net 4.0应用程序,它使用在服务器2008 x64上运行的net.msmq
建立
现在一切都在使用.net 3.5进行生产.
我在服务器上安装了.net 4.0并创建了新站点以便在同一个盒子上进行暂存.
新的暂存msmq设置是
为不同的站点创建了另一个队列.
我用新网站做的另一个变化是,这是iis中不同的网站,可以监听不同的IP地址.我已将net.msmq绑定到'localhost'.主站点以及net.msmq - >'localhost'具有相同的绑定.我认为应该是这样的.请指出是否需要一些不同的配置.
问题是我的请求正在进入队列但没有被应用程序接收它只是停留在那里
日志中没有任何错误迹象.我在日志中看到的与此相关的事情是警告"msmqactivation无法发现队列".虽然这个警告我从来没有正确理解,因为我们已经看到这总是与3.5中的msmq一切都很好.
我能想到的任何东西都经过验证,而且是正确的.
摘要
请使用net.msmq提供有关多个站点设置的任何信息.我正在为两个站点使用net.msmq绑定值='localhost'.我认为这是机器名称.
有什么方法可以诊断这个问题吗?
您可能想到的任何其他事情都可能有所帮助.
昨天我们不得不推迟释放,因为花了100个工时我们无法弄清问题是什么.也不能让它在我的开发机器中破碎.
编辑
问题是在创建新站点命名约定后不起作用
net.msmq服务地址为"net.msmq://localhost/private/staging/msmqdataservice.svc"net.msmq endpoing,地址为MSMQ中的"net.msmq://localhost/private/staging/msmqdataservice.svc"队列 - > name ="$ private\staging/msmqdataservice.svc"
它使用服务名称net.msmq://localhost/private/msmqdataservice.svc
但现在我不能让两个站点使用完全相同的端点.
在同一台机器上的不同url和不同队列的两个不同站点中有相同端点的方法吗?
我有一个datareader,我想从它返回行集,在阅读了一天的书后,我无法找到在f#中做到最好的方法.我可以在F#中做正常的C#方式,但这不是我使用f#的原因
这是我想要实现的目标
let values =
while reader.Read() do
yield reader.GetString(0), reader.GetInt64(1)
Run Code Online (Sandbox Code Playgroud)
以上是我的尝试方式
什么是实现这一目标的最佳方式
我们现在正在使用MSMQ和WCF激活功能,它使我们不会拉队列来读取消息.它像推送消息到应用程序.
我们正在考虑从MSMQ移植到RabbitMQ,从而通过消息队列完成我们所需的操作.
关于RabbitMQ .net客户端支持从订阅队列接收消息通知,我无能为力?
在带有.net的RabbitMQ中有什么可以像MSMQ那样向用户发送推送通知吗?
或者我们需要不断检查消息的服务运行?
我有兴趣使用jquery移动控件,但只有我可以使用它的方法是使用"page"标签.
使用页面很多自动注入到HTML +链接等通过ajax返回按钮.我对所有类型的自动ui都不感兴趣.
我怎样才能使用jquery移动控件(按钮,链接,列表等)而不需要整个页面jquery移动页面?