背景:我是WinDbg的新手并试图让它第一次运行.我想检查一下从Windows Server 2008(x86)上的IIS 7中运行的运行的ASP.NET 4站点获取的内存转储,并下载到我的本地计算机.
我安装了调试工具并首次启动了WinDbg,打开了故障转储.我去了File | 符号文件路径并设置路径*srv*c:\symbols*http://msdl.microsoft.com/download/symbols*并等待加载的所有符号.
在尝试加载SOS时,我遇到了问题.首先,我尝试了以下命令......
.loadby sos mscorwks
Run Code Online (Sandbox Code Playgroud)
......并收到了答复Unable to find module 'mscorwks'.
在搜索网页后,我尝试通过执行以下命令来加载mscorwks ...
sxe ld mscorwks.dll
g
Run Code Online (Sandbox Code Playgroud)
...并收到响应"'g'中没有可运行的调试对象错误"
我将SOS.dll(从C:\ Windows\Microsoft.NET\Framework\v4.0.30319)复制到WinDbg目录中,然后尝试...
.load sos
Run Code Online (Sandbox Code Playgroud)
......并收到错误......
The call to LoadLibrary(sos) failed, Win32 error 0n193
"%1 is not a valid Win32 application."
Please check your debugger configuration and/or network access.
Run Code Online (Sandbox Code Playgroud)
我不太清楚如何继续.我只是想加载SOS并挖掘这个转储文件.任何帮助将不胜感激.
Fyi ...我正在尝试使用64位版本的Windbg在64位版本的Windows 7上打开转储文件.
我正在尝试优化查询,但不太了解解释计划返回的一些信息.谁能告诉我OPTIONS和COST专栏的重要性?在OPTIONS列中,我只看到单词FULL.在COST专栏中,我可以推断出较低的成本意味着更快的查询.但是,成本价值究竟代表什么,可接受的阈值是多少?
在Visual Studio中编辑.NET配置文件(app.config,web.config等)时,我会选择Visual Studio的intellisense来指导我选择应用程序的设置.如果我添加自定义配置部分,如何为我的自定义设置启用intellisense?我确信必须有一个简单的答案,但粗略的谷歌搜索并没有给我任何帮助.
谢谢!
有没有办法让Oracle SQL Developer不关闭我的数据库连接,或者增加超时?有时在长时间运行的查询期间,SQL Dev将关闭连接,让我的查询在服务器上运行,但我没有结果.如果我RDP进入服务器并在本地运行SQL Dev,它似乎永远不会有这个问题.
我在Oracle数据库上调优SQL查询.我想确保在运行每个查询之前清除所有缓存的项目,以防止误导性能结果.我通过运行以下命令清除共享池(以摆脱缓存的SQL /解释计划)和缓冲区缓存(以摆脱缓存的数据):
alter system flush buffer_cache;
alter system flush shared_pool;
Run Code Online (Sandbox Code Playgroud)
还有更多我应该做的,还是这个足够?
谢谢!
我想将数值转换为字符串,显示特定于文化的数字.例如,阿富汗使用的Dari语言(文化名称"prs-AF")使用东方阿拉伯数字而不是大多数西方文化中使用的阿拉伯数字(0,1,2,3,4,5,6,7,8,9).
在检查Framework内置的CultureInfo类时,它会列出正确的本机数字(从LinqPad的输出中截取):

CultureInfo.CreateSpecificCulture("prs-AF").NumberFormat.NativeDigits
Run Code Online (Sandbox Code Playgroud)
但是,当尝试将数字转换为字符串以在该文化中显示时,我没有获得原始数字:

var number = 123.5;
var culture = CultureInfo.CreateSpecificCulture("prs-AF");
Thread.CurrentThread.CurrentUICulture = culture;
Thread.CurrentThread.CurrentCulture = culture;
var text = number.ToString(culture);
Console.WriteLine(text);
Run Code Online (Sandbox Code Playgroud)
谁能告诉我如何显示原生数字?
我有一个包含2个计算列的表,两个都将"Is Persisted"设置为true.但是,在查询中使用它们时,执行计划会显示用于计算列的UDF作为计划的一部分.由于列数据是由UDF在添加/更新行时计算的,为什么计划会包含它?
当这些列包含在查询中时,查询速度非常慢(> 30s),当排除它们时,查询速度非常快(<1s).这使我得出结论,查询实际上是在运行时计算列值,这不应该是这种情况,因为它们被设置为持久化.
我在这里错过了什么吗?
更新:这里有关于我们使用计算列的推理的更多信息.
我们是一家体育公司,有一个客户将完整的球员名称存储在一个列中.他们要求我们允许他们分别按名字和/或姓氏搜索玩家数据.值得庆幸的是,他们使用一致的播放器名称格式 - LastName,FirstName(NickName) - 因此解析它们相对容易.我创建了一个UDF,调用CLR函数来使用正则表达式解析名称部分.因此,显然调用UDF(后者又调用CLR函数)非常昂贵.但由于它仅用于持久列,我认为它只会在我们将数据导入数据库的一天中使用几次.
performance calculated-columns sql-server-2008-r2 sql-execution-plan
我正在尝试将Silverlight DataGrid绑定到WCF服务调用的结果.我没有看到网格中显示的数据,所以当我浏览调试器时,我注意到XDocument.Descendants()即使在传入有效的元素名称时也没有返回任何元素.这是从服务传回的XML:
<ArrayOfEmployee xmlns="http://schemas.datacontract.org/2004/07/Employees.Entities" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Employee>
<BirthDate>1953-09-02T00:00:00</BirthDate>
<EmployeeNumber>10001</EmployeeNumber>
<FirstName>Georgi</FirstName>
<Gender>M</Gender>
<HireDate>1986-06-26T00:00:00</HireDate>
<LastName>Facello</LastName>
</Employee>
<Employee>
<BirthDate>1964-06-02T00:00:00</BirthDate>
<EmployeeNumber>10002</EmployeeNumber>
<FirstName>Bezalel</FirstName>
<Gender>F</Gender>
<HireDate>1985-11-21T00:00:00</HireDate>
<LastName>Simmel</LastName>
</Employee>
</ArrayOfEmployee>
Run Code Online (Sandbox Code Playgroud)
这里是我用来将结果加载到匿名对象集合中的方法,使用Linq到XMl,然后将集合绑定到网格.
void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs args)
{
if (args.Error != null) return;
var xml = XDocument.Parse(args.Result);
var employees = from e in xml.Descendants("Employee")
select new
{
EmployeeNumber = e.Element("EmployeeNumber").Value,
FirstName = e.Element("FirstName").Value,
LastName = e.Element("LastName").Value,
Birthday = e.Element("BirthDate").Value
};
DataGrid.SelectedIndex = -1;
DataGrid.ItemsSource = employees;
}
Run Code Online (Sandbox Code Playgroud)
知道为什么xml.Descendants("Employee")不退货吗?
谢谢!
我的团队维护着一个约为的Oracle数据库.200GB大小.所有数据(表,索引等)都存在于单个"USERS"表空间中.这是一个坏主意吗?拥有多个表空间有什么好处,在什么情况下我想为我的数据库添加更多?
谢谢!
我希望我的Silverlight应用程序填满整个浏览器窗口.我已将插件对象的宽度和高度设置为100%,并将我的LayoutRoot容器的高度和宽度设置为自动,但仍然没有运气.有什么建议?
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:Silverlight ID="Silverlight1" runat="server"
Source="~/ClientBin/Client.xap"
MinimumVersion="2.0.30818.0"
AutoUpgrade="true"
Height="100%"
Width="100%">
</asp:Silverlight>
</form>
<UserControl
x:Class="Client.Page"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="Auto"
Width="Auto">
<Grid
x:Name="LayoutRoot"
Background="#084E85"
ShowGridLines="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="280" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="80" />
<RowDefinition Height="Auto" />
<RowDefinition Height="600" />
</Grid.RowDefinitions>
...Remaining content here...
</Grid>
</UserControl>
Run Code Online (Sandbox Code Playgroud)
免责声明:我首先搜索了一个答案,找到了这个帖子.但是,您可以通过我的代码看到这对我不起作用.
oracle ×4
oracle10g ×3
silverlight ×2
.net ×1
.net-4.0 ×1
app-config ×1
browser ×1
c# ×1
caching ×1
cultureinfo ×1
formatting ×1
intellisense ×1
linq-to-xml ×1
localization ×1
performance ×1
size ×1
sos ×1
sql ×1
tablespace ×1
wcf-binding ×1
web-config ×1
windbg ×1