小编Dil*_*e-O的帖子

.NET中的"链接"语句是否有任何性能优势?

从表中检索查找代码值时,有些人会这样做......

Dim dtLookupCode As New LookupCodeDataTable()
Dim taLookupCode AS New LookupCodeTableAdapter()
Dim strDescription As String

dtLookupCode = taLookupCode.GetDataByCodeAndValue("EmpStatus", "FULL")
strDescription = dtLookupCode.Item(0).Meaning
Run Code Online (Sandbox Code Playgroud)

...但是,我也看到过像这样"链接"的事情......

strDescription = taLookupCode.GetDataByCodeAndValue("EmpStatus", "FULL").Item(0).Meaning
Run Code Online (Sandbox Code Playgroud)

...由于表适配器知道其结果集的结构是什么样的,因此首先绕过了查找代码数据表.

使用"链式"方法是否可以节省创建数据表对象的开销,还是有效地创建它以便正确处理.Item(0).Meaning语句?

.net performance

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

为什么我的D3变焦转换不能正确居中?

我正在将我的地图升级到D3的v3并使用此处找到的D3示例代码中概述的点击放大转换.

我的代码几乎相同,只是我的地图尺寸略小(564 x 300而不是960 x 500).另外,我的地图嵌套在div中,并且在我页面的左上角(虽然我不认为这很重要)

我的地图加载的初始加载很好(目前使用黑色背景区分)

// Clear existing map in case there is remnant data.
$("#map").html(null);

var mapWidth = 564;
var mapHeight = 300;

var projection = d3.geo.albersUsa()
                          .scale(mapWidth)
                          .translate([0, 0]);   

var path = d3.geo.path()
                 .projection(projection);

var svg = d3.select("#map")
               .append("svg")
               .attr("id", "map-svg")
               .attr("width", mapWidth)
               .attr("height", mapHeight);

   svg.append("rect")
    .attr("id", "map-background")
    .attr("class", "background")
    .attr("width", mapWidth)
    .attr("height", mapHeight)
    .on("click", click);

   // Create placeholders for shapes and labels
   var states = svg.append("g")
                   .attr("transform", "translate(" + mapWidth / 2 + …
Run Code Online (Sandbox Code Playgroud)

zoom map translate scale d3.js

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

AJAX Toolkit模态弹出窗口不会出现

我在从服务器端调用模式弹出窗口时遇到了一些麻烦.所以,我将modalpopupextender的targetcontrolID设置为隐藏标签.然后在按钮点击的代码隐藏中,我尝试添加this.modalpopup.show(); 不幸的是,当发生这种情况时,模态弹出窗口不会出现.我可以看到代码被执行,但没有显示.

这是我的ASP.减去<按钮和popupextender的开口<,因为某些原因,这些线条不会显示.

<asp:Button CssClass="Button" ID="button" runat="server" Text="Button" AccessKey="m" meta:resourcekey="buttonResource1" OnClick="button_Click" /> 

<ajaxToolkit:ModalPopupExtender ID="mpe" runat="server" TargetControlID="forpopup"
            PopupControlID="PopupPanel" BackgroundCssClass="modalBackground" />

       <asp:Label ID="forpopup" runat="server" Visible="False"></asp:Label>

        <asp:panel id="PopupPanel" runat="server" BorderStyle="Groove" BorderColor="black" BorderWidth="3px" BackColor="AliceBlue" Height="200px" Width="200px" style="display: none">

            <asp:Label ID="lblPopup" runat="server" Text="popup!"></asp:Label><br />
            <br />
            <asp:DropDownList ID="ddlData" runat="server">
            </asp:DropDownList><br />
            <br />

            <asp:Button ID="btnPopupOK" runat="server" Text="Ok" />
            <asp:Button ID="btnPopupCancel" runat="server" Text="Cancel" />
        </asp:panel>    
Run Code Online (Sandbox Code Playgroud)

这是我的代码隐藏

    protected void button_Click(object sender, EventArgs e)
    {
        this.mpe.Show();
    }
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-ajax ajaxcontroltoolkit

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

如何获取Azure WebJob的输入blob的名称?

我正在使用新的Azure WebJobs功能,并且当一个新文件进入其中一个blob时有一个简单的触发器:

public static void ProcessImportFile([BlobInput("importjobsdata/{name}")] TextReader input,
                                    [BlobOutput("importjobslog/log_{name}")] TextWriter writer)
{
    writer.WriteLine("Starting import file process...");

    var result = InputData(input, writer);

    var status = result == 0 ? "SUCCESS" : "FAIL";
    var message = result == 0
        ? "Import success."
        : "Import fail. " + result + " records failed to import. Check logs for details.";

    writer.WriteLine(message);
}
Run Code Online (Sandbox Code Playgroud)

我想要做的是获取上传文件的名称(即数据注释中的{name}属性),以便我可以将该信息写入编写器(日志)以进行诊断.

但是,我似乎无法找到TextReader/BlobInput的任何属性,它将为我提供此信息.

我做了一点挖掘,看起来TextReader的BaseStream属性是一个Microsoft.WindowsAzure.Jobs.WatchableStream对象.我不确定这是否有助于追踪名称.

我该怎么做呢?

azure azure-webjobs

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

我应该重命名我的按钮事件处理程序名称吗?

使用Visual Studio时(虽然理想情况下这可以应用于通用情况)并双击我创建的按钮,自动生成的事件处理程序代码使用以下签名:

Protected Sub btnSubmitRequest_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnSubmitRequest.Click

End Sub
Run Code Online (Sandbox Code Playgroud)

最佳做法是保留此方法的名称,还是将其重命名为更具描述性的内容,例如SubmitNewEmployeeRequest?

naming-conventions

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

在.NET中打印PrintDocument对象时出现奇怪的错误

我有一个Winforms应用程序,它生成自己的PrintDocument对象进行打印.它在我自己的测试中在XP和Windows 7中运行良好,但是当用户选择带有打开文档的打印命令时,一个用户在Vista中遇到以下异常:

************** Exception Text **************
System.ArgumentException: Handle 0 is not valid.
   at System.Drawing.Printing.PrinterSettings.SetHdevmode(IntPtr hdevmode)
   at System.Windows.Forms.PrintDialog.UpdatePrinterSettings(IntPtr hDevMode, IntPtr hDevNames, Int16 copies, Int32 flags, PrinterSettings settings, PageSettings pageSettings)
   at System.Windows.Forms.PrintDialog.ShowPrintDialog(IntPtr hwndOwner, WndProc hookProcPtr, PRINTDLG data)
   at System.Windows.Forms.PrintDialog.RunDialog(IntPtr hwndOwner)
   at System.Windows.Forms.CommonDialog.ShowDialog(IWin32Window owner)
   at System.Windows.Forms.CommonDialog.ShowDialog()
   at Deck_Studio.DSMain.PrintDeck(Object sender, EventArgs e)
   at System.Windows.Forms.MenuItem.OnClick(EventArgs e)
   at System.Windows.Forms.MenuItem.MenuItemData.Execute()
   at System.Windows.Forms.Command.Invoke()
   at System.Windows.Forms.Command.DispatchID(Int32 id)
   at System.Windows.Forms.Control.WmCommand(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at …
Run Code Online (Sandbox Code Playgroud)

.net printdocument winforms

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

我如何在SQL 2000中使用TryParse?

我在旧的SQL 2000数据库中有一个存储过程,该数据库采用格式化为varchar的注释列并将其作为money对象导出.在设置此表结构时,假设这将是进入此字段的唯一数据.目前的程序只是这个:

SELECT CAST(dbo.member_category_assign.coment AS money)
  FROM dbo.member_category_assign
 WHERE member_id = @intMemberId
       AND 
       dbo.member_category_assign.eff_date <= @dtmEndDate
       AND 
       (
        dbo.member_category_assign.term_date >= @dtmBeginDate
        OR 
        dbo.member_category_assign.term_date Is Null
       )
Run Code Online (Sandbox Code Playgroud)

但是,现在正在将数据插入到此列中,该列无法解析为money对象并导致该过程崩溃.我无法删除"坏"数据(因为这是第三方产品),但需要更新存储过程以测试可解析的钱条目并返回该条目.

如何更新此过程以便它只返回可解析为money对象的值?我是否创建了一个临时表并遍历每个项目,或者是否有更聪明的方法来执行此操作?我坚持使用旧版SQL 2000(版本6.0),因此不幸使用任何较新的功能.

t-sql parsing sql-server-2000

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