小编Mic*_*142的帖子

如何在没有VerifyExtraction的情况下将MSSQLServer数据库提取为.dacpac?

我想用Server Management Studio提取MSSQLServer数据库的数据库模式.我使用Extract命令"Extract Data-tier Application .."

在数据库中有几个对另一个数据库的引用.因此,我得到以下错误.

提取数据库时出错:验证数据包的模式模型失败.错误SQL71562:验证元素[dbo]时出错.[x]有一个未解析的对象[dbo]的引用.[y].从此平台创建包时不支持外部引用.

问题是,SSMS使用带参数/ p的SQLPackage.exe :VerifyExtraction = True.当我使用控制台并在没有此参数的情况下调用SQLPackage.exe时,它默认使用/ p:VerifyExtraction = False,我可以创建.dacpac文件.

有没有办法配置SSMS以禁用验证?

database sql-server ssms data-tier-applications

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

如何以编程方式将按钮上的可见性绑定到C#中的INotifyPropertyChanged布尔属性?

这是我到目前为止所得到的:

System.Windows.Data.Binding binding = new System.Windows.Data.Binding("MyProperty");
binding.Mode = System.Windows.Data.BindingMode.TwoWay;
binding.Converter = new System.Windows.Controls.BooleanToVisibilityConverter(); 
binding.Source = mySourceObject;

this.SetBinding(this.myButton.Visibility, binding);
Run Code Online (Sandbox Code Playgroud)

但是可见性不是依赖属性,所以我该怎么做呢?

c# wpf

8
推荐指数
2
解决办法
7029
查看次数

如何在没有nuget或VSIX的情况下为项目添加自定义代码分析器?

我想在Visual Studio 2015中为C#ConsoleApplication编写自定义代码分析器.出于这个原因,我不想在模板中创建一个单独的"带代码修复分析器"项目,因为这需要在我的项目中将此分析器添加为nuget包.

在此输入图像描述
是否可以手动添加分析仪参考?我想参考没有nuget的分析仪.

c# analyzer roslyn visual-studio-2015

7
推荐指数
2
解决办法
1272
查看次数

在 GitLab CI 脚本中使用 CURL 响应

我尝试获取 .gitlab-ci.yaml 中某个 GitLab 项目的所有徽章,并按name找出某个徽章的id。我有以下脚本,我尝试使用 curl 调用徽章 api 并将 json 结果存储在名为BADGES的变量中:

build-backend:
  stage: build
  script:
    - BADGES='curl --header "PRIVATE-TOKEN:$GITLAB_API_TOKEN" "https://gitlab.example.com/api/v4/projects/${CI_PROJECT_ID}/badges"'
    - echo ${BADGES}
Run Code Online (Sandbox Code Playgroud)

当然,现在echo ${BADGES}将输出卷曲,因为我将其存储在变量的字符串中,但我不知道如何执行此操作。

在 JavaScript 中我会这样做:

const badges = ...CURL_RESPONSE...;
const versionBadge = badges.find(b => b.name === 'vBadge');
Run Code Online (Sandbox Code Playgroud)

这有可能吗?

gitlab gitlab-ci gitlab-api

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

使用 SQL-Server 2016 生成 EntityFramework 6 模型非常慢

我将 Visual Studio 2015 Professional 与 Sql Server 2016 和 EntityFramework 6 一起使用。在想知道模型生成的性能缓慢之后,我在EntityStoreSchemaGeneratorDatabaseSchemaLoader类中找到了方法IEnumerable<DataRow> LoadDataTable

命令的执行有时需要超过 2 分钟,而使用旧版本的 sql server 需要几毫秒。

using (EntityCommand command = CreateFilteredCommand(_connection, sql, null, queryTypes, new List<EntityStoreSchemaFilterEntry>(filters), filterAliases))
{
    using (DbDataReader reader = command.ExecuteReader(CommandBehavior.SequentialAccess))
...
Run Code Online (Sandbox Code Playgroud)

有谁知道,为什么 ExecuteReader 这么慢?这不是CPU或内存的问题。也许重要的是,SQL-Server 2016 在 VM-Ware 中运行!

更新

此语句在 SQL-Server 2016 中运行几分钟,在 2012 中需要几毫秒。

exec sp_executesql N'SELECT 
[UnionAll1].[Ordinal] AS [C1], 
[Extent1].[CatalogName] AS [CatalogName], 
[Extent1].[SchemaName] AS [SchemaName], 
[Extent1].[Name] AS [Name], 
[UnionAll1].[Name] AS [C2], 
[UnionAll1].[IsNullable] AS [C3], …
Run Code Online (Sandbox Code Playgroud)

c# sql-server vmware entity-framework

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

更改现有 VIEW 的 SCHEMABINDING

我有一个现有的数据库(SSDT 项目作为源),我必须在其中更新表。我只是将列类型从 更改nvarchar(MAX)nvachar(256)。问题是,我有一个现有视图绑定到该表SCHEMABINDING。我无法编辑表列,因为SCHEMABINDING会阻止影响视图的更改。

以下脚本在 PreDeploymentScript 中执行。当我调用该DROP VIEW [base].[VIEW_DEPENDING_ON_TABLE]语句时,部署后视图丢失。我的想法是,在部署期间禁用SCHEMABINDING并在完成后启用它。这在 TSQL 脚本中怎么可能呢?或者有更好的方法来做到这一点吗?

IF EXISTS ( SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS
        WHERE TABLE_SCHEMA = N'base'
        AND TABLE_NAME = 'TABLENAME'
        AND COLUMN_NAME = 'Instance'
        AND CHARACTER_MAXIMUM_LENGTH = -1)
AND NOT EXISTS (SELECT * FROM sys.indexes WHERE name='IX_TABLENAME_Instance' AND object_id = OBJECT_ID(N'[base].[TABLENAME]'))
BEGIN

IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[base].[VIEW_DEPENDING_ON_TABLE]') AND type in (N'V'))
    BEGIN
        DROP VIEW [base].[VIEW_DEPENDING_ON_TABLE]
    END

IF EXISTS …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server sql-server-data-tools

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

ListViewItem与CheckBox IsChecked绑定到ViewModel

我有一个带有DataTemplate的ListView,用于为每个ListViewItem显示一个Checkbox.

在此输入图像描述

<ListView ItemsSource="{Binding TableNames}">
    <ListView.ItemTemplate>
        <DataTemplate>
            <CheckBox Content="{Binding}" IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsSelected, Mode=TwoWay}" />
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>
Run Code Online (Sandbox Code Playgroud)

ItemsSource("TableNames")在ViewModel中被解除,如下所示:

private ObservableCollection<Item> _TableNames = new ObservableCollection<Item>();
public ObservableCollection<Item> TableNames
{
    get { return _TableNames; }
    set
    {
        _TableNames = value;
        OnPropertyChanged("TableNames");
    }
}

public class Item
{
    public bool IsSelected { get; set; }

    public string Name { get; set; }

    public override string ToString()
    {
        return this.Name;
    }
}
Run Code Online (Sandbox Code Playgroud)

如何将Checkbox中的IsChecked绑定到Item.IsSelected属性?

我的代码不起作用.

c# wpf checkbox listview templatebinding

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

VSTS Minimatch模式排除.git文件夹

我正在使用VSTS和构​​建任务FTP上传.将文件和文件夹上载到我的FTP服务器时,.git文件夹也始终复制到服务器.我试图用文件模式排除.git文件夹,如下所示:

**
!(**/.git/**)
Run Code Online (Sandbox Code Playgroud)

我不知道为什么它不起作用但有没有办法用minimatch模式告诉任务明确排除文件夹?

minimatch azure-devops azure-pipelines-build-task azure-pipelines

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