小编Mat*_*eid的帖子

使用SQL Server 2008在Visio中进行数据库图表的逆向工程

我需要对Microsoft SQL Server 2008进行逆向工程以创建Microsoft Visio 2007数据库模型图.所以我从Database菜单中选择"Reverse Engineer"来连接数据库.

我配置了Microsoft SQL Server Visio驱动程序,以便使用SQL Server Native Client 10.0作为ODBC驱动程序.之后我创建了一个连接到我的数据库的用户DSN.此DSN有效(至少提供的测试成功).在反向工程向导中单击下一步后,Visio请求我正确提供的凭据,但单击确定后,我收到以下消息:

当前选定的Visio驱动程序与数据源不兼容.

我尝试使用旧的SQL Server ODBC驱动程序,当然还要重新配置Visio驱动程序.它也不起作用.

database odbc visio sql-server-2008

42
推荐指数
3
解决办法
7万
查看次数

在java中的字符串中查找"\"的最后一个索引

任何人都可以帮我在java中的字符串中找到LastIndexOf'\'吗?我把代码编写为:

int i = app.lastIndexOf('\');
Run Code Online (Sandbox Code Playgroud)

app是我的字符串,但有一个错误为"无效的字符常量".我尝试使用双引号但仍然没用.谁可以帮我这个事?

java string

19
推荐指数
3
解决办法
3万
查看次数

使用后删除临时文件

我需要在Windows Forms .NET 3.5应用程序中使用一些临时文件.这些文件在外部应用程序中打开,当然可以比我自己的程序运行更长的时间.

是否有任何最佳实践可以确保在任何时候清除这些临时文件,以避免用不再需要的"垃圾"文件填充用户的硬盘?或者甚至Windows类自动处理这种情况?

一个很好的例子是任何邮件客户端:当你在任何应用程序中打开附件时,它通常被写入一个打开的临时文件.有没有办法弄清楚这些文件如何管理清理?

使用谷歌向我展示了许多清理和调整工具来手动清理临时目录,但我不想强迫用户这样做.:-)

任何帮助表示赞赏.

马蒂亚斯

.net windows temporary-files

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

DataGridView排序,例如.NET中的BindingList <T>

BindingList<T>在我的Windows窗体中使用了一个包含" IComparable<Contact>"联系人对象列表的窗体.现在我希望用户能够按网格中显示的任何列进行排序.

在线MSDN上有一种描述如何实现基于BindingList<T>允许排序的自定义集合的方法.但是,是否有一个Sort-event或者某些东西可以在DataGridView中捕获(或者,甚至更好,在BindingSource上)以使用自定义代码对底层集合进行排序?

我真的不喜欢MSDN描述的方式.另一种方法是我可以轻松地将LINQ查询应用于集合.

.net sorting data-binding bindinglist winforms

11
推荐指数
3
解决办法
3万
查看次数

InvalidArgument =值'0'对'SelectedIndex'无效

我正在使用.NET 4.0中的Windows窗体应用程序.当我将数据绑定到a BindingSource(绑定到a ComboBox)时,我得到以下异常.注意:只有当调试器停止在被抛出的异常时才会得到它,无论是未处理还是处理.因此,异常被捕获到某处 - 但是我不确定是否可以抛出它.

ArgumentOutOfRangeException发生 InvalidArgument =值'0'对'SelectedIndex'无效.参数名称:SelectedIndex

我没有设置SelectedIndex财产.我的代码如下所示.myData是一个IList实体(List在运行时):

myBindingSource.DataSource = myData;
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚我做错了什么.而且,Call Stack让我感到困惑(见下文).Windows窗体框架似乎是SelectedIndex在组合框上设置,这会导致异常.有人知道摆脱这个的方法吗?

干杯马蒂亚斯

System.Windows.Forms.dll!System.Windows.Forms.ComboBox.SelectedIndex.set(int value) + 0x233 bytes   
System.Windows.Forms.dll!System.Windows.Forms.CurrencyManager.OnPositionChanged(System.EventArgs e) + 0x3e bytes    
System.Windows.Forms.dll!System.Windows.Forms.CurrencyManager.ChangeRecordState(int newPosition, bool validating, bool endCurrentEdit, bool firePositionChange, bool pullData) + 0x1bd bytes    
System.Windows.Forms.dll!System.Windows.Forms.CurrencyManager.List_ListChanged(object sender, System.ComponentModel.ListChangedEventArgs e) + 0x75c bytes   
System.Windows.Forms.dll!System.Windows.Forms.BindingSource.ResetBindings(bool metadataChanged) + 0x3e bytes    
System.Windows.Forms.dll!System.Windows.Forms.BindingSource.SetList(System.Collections.IList list, bool metaDataChanged, bool applySortAndFilter) + 0x22c bytes 
System.Windows.Forms.dll!System.Windows.Forms.BindingSource.DataSource.set(object value) + 0x47 bytes   
(my method)
Run Code Online (Sandbox Code Playgroud)

.net c# winforms

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

在 Apache POI 中按文本查找 Excel 单元格

我想通过文本在 Excel 工作表中找到一个单元格。文字是这样的%t

sheet.findCell("%t"); // pseudo-code, not working
Run Code Online (Sandbox Code Playgroud)

我的目标是使用户能够提供一种模板,其中写入数据。用户可以在 Excel 文件中配置颜色和字体以及数据的位置。该%t单元格是数据表的左上角。

附加问题:有没有更优雅的方法来完成这项工作?

编辑我正在遍历行和单元格以找到它。恐怕它不是很有效,但到目前为止它有效:

public static Cell findCell(XSSFSheet sheet, String text) {     
    for(Row row : sheet) {          
        for(Cell cell : row) {              
            if(text.equals(cell.getStringCellValue()))
                return cell;
        }
    }       
    return null;
}
Run Code Online (Sandbox Code Playgroud)

java excel apache-poi

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

.NET Task在一个Thread中执行

我可以依赖事实a Task总是在一个线程中执行吗?它可以是任何一种,但对于整个身体应该是相同的,因为我需要Culture正确设置线程.

Task bind = Task.Factory.StartNew(() =>
{
    Thread.CurrentThread.CurrentCulture = culture;

    // do some asp.net binding stuff with automatic
    // date formatting

    gridView.DataSource = table;
    gridView.DataBind();
}
Run Code Online (Sandbox Code Playgroud)

如果我不能,是否有一个参数左右来获得这种行为?

干杯,马蒂亚斯

c# asp.net culture .net-4.0 task

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

ASP.NET母版页中的PreRender未触发

双方Page_PreRenderPage_Load没有在母版页我一起工作的工作.Page_Init但是,出于任何原因.AutoEventWireup设置为true.

public partial class MyMaster : MasterPage
{
    public MyMaster()
    {
        // tried this too, but doesn't matter whether this LoC
        // is there or not
        this.PreRender += Page_PreRender;
    }

    protected void Page_PreRender(object sender, EventArgs e)
    {
        // does not fire
    }
}
Run Code Online (Sandbox Code Playgroud)

我也在一个空Web项目中尝试过.它工作得很好.

编辑:我想通了,设置EnableViewStatetrue修复它:

<%@ Master Language="C#" MasterPageFile="~/MainMaster.master" AutoEventWireup="true"
    CodeBehind="MyMaster.master.cs" Inherits="MyMaster" EnableViewState="false" %>
Run Code Online (Sandbox Code Playgroud)

但我不希望启用ViewState.OnPreRender无论有什么价值,压倒一切EnableViewState都是有效的.现在我想知道为什么,只是使用覆盖方式对我来说似乎是个hacky.有人可以帮忙吗?

c# asp.net viewstate master-pages autoeventwireup

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

Azure和独立SQL Server上的SqlMembership

我正在使用ASP.NET Web Forms应用程序SqlMembershipProvider.由于它也在Azure上运行,我使用KB2006191更新的ASP.NET脚本用于SQL Azure用于表和SP.

显然,它们与独立的SQL Server 2008 R2 SP1无法顺利运行.特别是dbo.aspnet_Users_DeleteUser引发内部错误:

消息8624,级别16,状态1,过程aspnet_Users_DeleteUser,行111内部查询处理器错误:查询处理器无法生成查询计划.有关更多信息,请联系客户支持服务.

编辑:

我将问题分解为一个实际失败的SQL语句(即使我硬编码了一个值@UserId):

DELETE FROM dbo.aspnet_Users WHERE UserId = @UserId
Run Code Online (Sandbox Code Playgroud)

原版的:

我尝试通过下载累积更新包并设置跟踪标志4199来修复我的SQL Server安装.但是,这没有帮助.说实话,我不太确定我是否正确应用了补丁.我正在做进一步的研究.

此外,我尝试重写SP一点,因为我在网上发现了一些提示.这也没有帮助,并且aspnet_regsql无论如何都为独立SQL Server 生成相同的查询.实际上,我试图通过转动它来摆脱第111行周围的子查询:

IF ((@TablesToDeleteFrom & 1) <> 0 AND
    (@TablesToDeleteFrom & 2) <> 0 AND
    (@TablesToDeleteFrom & 4) <> 0 AND
    (@TablesToDeleteFrom & 8) <> 0 AND
    (EXISTS (SELECT UserId FROM dbo.aspnet_Users WHERE @UserId = UserId)))
Run Code Online (Sandbox Code Playgroud)

......进入这个:

IF ((@TablesToDeleteFrom & 15) <> 0)
Run Code Online (Sandbox Code Playgroud)

有没有人遇到类似的问题处理成员资格以及Azure和独立SQL Server?

sql-server asp.net sqlmembershipprovider azure-sql-database

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

Microsoft.TeamTest.targets中的MSBuild NullReferenceException

在TFS 2010上,我配置了一些运行MSTest单元测试的CI构建.这工作正常,除了一个解决方案,我通常(但不总是)获得以下构建(而不是测试运行器)错误:

C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v10.0\TeamTest\Microsoft.TeamTest.targets(14):未将对象引用设置为对象的实例.

Logging Verbosity构建定义的设置为Diagnostic.一些social.msdn.com帖子暗示这可以摆脱这种偶然的错误.顺便说一句,如果它是偶然的,我们可以通过调度另一个构建来解决它,如果由于上述原因它被破坏了.然而,它并不需要花费很多时间来构建.

即使它是构建错误,也可以通过设置Disable Tests来修复True.不过,我确实想要进行测试.有人知道如何解决这个问题吗?其他(工作)解决方案通常All Projects是项目的子集.All Project是一个相当大的解决方案.

我在这里有缩短的MSBuild输出,如果它有帮助:

Run MSBuild for Project
Initial Property Values
AdditionalVCOverrides =
CommandLineArguments = /p:SkipInvalidConfigurations=true
Configuration = Release
GenerateVSPropsFile = True
LogFile =
LogFileDropLocation =
MaxProcesses = 1
OutDir = All Projects-CI\Binaries\Release
Platform = Any CPU
Project = All Projects-CI\Sources\Shared\All Projects.sln
ResponseFile =
RunCodeAnalysis = AsConfigured
Targets =
TargetsNotLogged = String[] Array …
Run Code Online (Sandbox Code Playgroud)

c# msbuild windows-server-2008-r2 tfs2010

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