我花了一天时间尝试使Ent Lib Logging工作并将任何内容记录到数据库或事件日志中.我有一个具有相同Ent Lib配置的Web应用程序和控制台应用程序,但只有控制台应用程序能够登录到事件日志.我尝试了所有权限,但我不知道我在做什么 - 哪些服务应该有什么.这是行不通的!
我读过这样的文章 http://imar.spaanjaars.com/275/logging-errors-to-the-event-log-in-aspnet-applications ,我想尝试给ASPNET帐户这些权限.我使用Windows 7,我找不到ASPNET用户帐户.那它在哪里?
这是从Ent Lib实用程序自动生成的配置文件,它仅适用于App.config,而不适用于web.config
<loggingConfiguration name="Logging Application Block" tracingEnabled="true"
defaultCategory="General" logWarningsWhenNoCategoriesMatch="true"
revertImpersonation="false">
<listeners>
<add source="Logger" formatter="Text Formatter" log="Application"
machineName="" listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.FormattedEventLogTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
traceOutputOptions="None" filter="All" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.FormattedEventLogTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
name="Formatted EventLog TraceListener" />
</listeners>
<formatters>
<add template="Timestamp: {timestamp}
Message: {message}
Category: {category}
Priority: {priority}
EventId: {eventid}
Severity: {severity}
Title:{title}
Machine: {machine}
Application Domain: {appDomain}
Process Id: {processId}
Process Name: {processName}
Win32 Thread Id: {win32ThreadId}
Thread Name: {threadName}
Extended Properties: {dictionary({key} - {value}
)}"
type="Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.TextFormatter, Microsoft.Practices.EnterpriseLibrary.Logging, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
name="Text Formatter" />
</formatters>
<categorySources>
<add …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用以下命令在我的.net网站中加载resx文件:
ResourceManager rm = new ResourceManager( "Project.Resource", Assembly.GetExecutingAssembly() );
Run Code Online (Sandbox Code Playgroud)
Resource.resx文件位于App_LocalResources文件夹中,并设置为嵌入在构建中的程序集中.
当我尝试使用以下方法访问resx文件时:
rm.GetString( "key" ); 要么 rm.GetString( "key", culture );
我收到一条错误消息:
找不到适合指定文化或中性文化的资源.确保在编译时将"Project.Resource.resources"正确嵌入或链接到程序集"Project"中,或者所有所需的附属程序集都是可加载和完全签名的.
注意.resources ......关于这里发生了什么的任何想法?
我在我的C应用程序中使用libcurl与我设置的HTTPS服务器进行通信.我在该服务器上生成了一个我希望与curl一起使用的自签名证书.
我知道将CURLOPT_SSL_VERIFYPEER设置为0以绕过SSL验证,但我希望将生成的证书添加到curl的"有效"CA证书中.
我已尝试将CURLOPT_CAPATH和CURLOPT_SSLCERT设置为服务器SSL公钥的位置,但无法通过验证.
如何添加自己的CA /自签名证书,以便libcurl成功验证它?
关于事务和msdtc如何协同工作,我有一些基本的困惑.
我有一个基本的服务器/客户端winforms应用程序.该应用程序使用transactionscope来封装在sql server上执行的几个sql命令.
当我在服务器上启用msdtc网络访问时,应用似乎工作正常.然后有一天它停止工作,说没有启用网络访问.
现在看来我必须在客户端计算机和服务器上启用msdtc网络访问才能使transactioncope工作.
客户端或服务器msdtc服务是否可以进行事务处理?或者两者兼而有之?
有没有人有关于客户端和服务器或服务器上是否需要msdtc网络访问的指导?
在IIS6中是否有使用ISAPI过滤器/扩展的原因?使用httphandler/http模块可以达到同样的效果.在IIS7中还有ISAPI被彻底删除了吗?IIS7的整个代码是用.Net编写的.我想知道是否应该详细了解ISAPI以进行调试或添加新功能?
考虑.NET Random流:
var r = new Random();
while (true)
{
r.Next();
}
Run Code Online (Sandbox Code Playgroud)
重复需要多长时间?
我有一些代码:
int value = 5;
MessageBox.Show ( value );
Run Code Online (Sandbox Code Playgroud)
并MessageBox.Show抱怨说:
"无法从'int'转换为'string'"
我似乎记得一些情况,其中值似乎被隐式转换为字符串值,但无法准确地回忆它们.
这个决定背后的原因是什么,任何值都不能隐式转换为字符串值?
我有一些代码将使用不同线程的Enterprise Library 5.0中的日志记录应用程序块进行日志记录.LAB线程安全吗?我可以像往常一样从不同的线程进行日志记录,还是需要同步日志记录代码,以便一次只能从一个线程使用?
Unity允许您命名同一接口的不同实现,然后按名称解析它们:
var container = new UnityContainer();
// register
container.Register<IFish, OneFish>("One");
container.Register<IFish, TwoFish>("Two");
// resolve
var twoFish = container.Resolve("Two");
Run Code Online (Sandbox Code Playgroud)
现在假设我有一个依赖于IFish并实现ITank的类:
class Tank : ITank
{
public Tank(IFish fish) {...}
}
Run Code Online (Sandbox Code Playgroud)
我如何解决ITank并指定要获得哪些IFish实现?
这不起作用:
container.Register<ITank, Tank>();
var tank = container.Resolve<ITank>("One");
Run Code Online (Sandbox Code Playgroud)
这有效:
var fish = container.Resolve<IFish>("One");
var tank = container.Resolve<Tank>(new DependencyOverride(typeof(IFish), fish);
Run Code Online (Sandbox Code Playgroud)
但它只处理简单的情况(例如在这个例子中)而不是可能有许多名为"One"的实现的一般情况.我想要的是能够告诉Unity:
"当解析名为"One"的使用实现时,如果没有这样的实现,则寄存器将回退到未命名的实现"
是否有可以通过此行为插入Unity的自定义解析程序?
在我的应用程序中,我正在进行服务调用并获取填充的WCF数据合同对象.我必须在网格中显示这些数据.将数据协定绑定到网格是一种好习惯吗?
玩笑
.net ×4
c# ×3
logging ×2
asp.net ×1
c ×1
cycle ×1
data-binding ×1
httphandler ×1
httpmodule ×1
iis ×1
iis-7 ×1
isapi ×1
libcurl ×1
msdtc ×1
random ×1
self-signed ×1
ssl ×1
string ×1
transactions ×1
wcf ×1
winforms ×1