小编Jak*_*134的帖子

Dapper - "必须声明标量变量@VersionId"

我正在尝试使用Dapper对我本地计算机上可用的数据库执行一些简单查询.

大多数查询工作正常,但是当我尝试将对象插入数据库中的相应表时,我得到了一个SqlException.我有一个类似的插入方法,首先实例化方法体内的对象并将其插入数据库,该方法工作正常.但是这个没有.更具体地说,这是异常的回应:

System.Data.SqlClient.SqlException: 'Must declare the scalar variable "@VersionId".'
Run Code Online (Sandbox Code Playgroud)

以下是产生异常的调用代码:

public int CreateNewSchema(Schema schema)
        {
            string sql = "INSERT INTO Schemas(VersionId, Created, Updated, SchemaData) " +
                         " values (@VersionId, @Created, @Updated, @SchemaData);";

            var affectedRows = _connection.Execute(sql, new{schema});
            return affectedRows;
        }
Run Code Online (Sandbox Code Playgroud)

我的数据库中相应的Schema表具有以下设计.

Schema 
ID             int
VersionID      nvarchar(max)
Created        datetime2(7)
Updated        datetime2(7)
SchemaData     nvarchar(max)
Run Code Online (Sandbox Code Playgroud)

最后,我试图在此表中插入的POCO对象定义如下:

public class Schema
    {
        public int ID { get; set; }
        public string VersionId { get; set; }
        public DateTime Created { get; set; } …
Run Code Online (Sandbox Code Playgroud)

c# sql asp.net dapper

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

Git 中是否有最近签出的分支列表?

当我需要拉下 master 并将其合并到我正在处理的分支中时,我已经厌倦了必须输入分支名称才能在分支和 master (或另一个分支)之间进行更改。

我想创建一个 bash 脚本,它将在我当前签出的分支之前签出我签出的分支

所以如果我有两个分支master并且branch-1

git checkout master (initial branch) 
git checkout branch-1 (do work on branch-1, but need to merge master changes into branch-1)
git checkout master
git pull (pull master changes) (current branch is master, previous branch is branch-1)
git checkout branch-1 <-- replace this command with a command `git lastbranch` that checks out the branch I had open before this branch
Run Code Online (Sandbox Code Playgroud)

基本上我只是在寻找我最近签出的分支的列表,从我的最后一个分支开始

因此,如果我已经签出了 master,并且在此之前我已经签出了branch-1,那么列表将如下所示

master
branch-1
... etc
Run Code Online (Sandbox Code Playgroud)

是否存在任何功能?

git

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

防止 mat-expansion-panel-header 中的滑动切换扩展面板

我的应用程序中有一个垫扩展面板,需要在其标题中具有滑动切换功能。

问题是,当切换滑动切换时,鼠标事件也会激活扩展面板的扩展功能。这意味着只需单击一下即可更改滑动切换并展开面板,这并不理想。

我尝试调用 $event.stopPropagation() 但这没有效果。有没有办法防止这种情况发生?

<div>
    <mat-expansion-panel>
        <mat-expansion-panel-header class="card-padding" disabled="true">
            <div class="flex-row">
                <div class="align-center mr-md">
                    <mat-slide-toggle disableRipple="true" (change)="toggleChange($event)"></mat-slide-toggle>
                </div>
            </div>
        </mat-expansion-panel-header>
    </mat-expansion-panel>
</div>


toggleChange(event: any){
    event.stopPropagation(); //this does nothing 
  }
Run Code Online (Sandbox Code Playgroud)

angular-material angular

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

NUnit 测试由于 StackOverflowException 而拒绝运行

我完全不确定是什么导致了异常。

我有许多使用 NUnit TestCases 的测试,这些测试都运行良好,没有任何问题。然后我编写了一个额外的测试,除了几个变量值之外几乎与其他测试相同,现在由于 StackOverflowException,我的任何测试都不会运行。

[05/10/2018 10:10:00 Informational] ------ Run test started ------
[05/10/2018 10:10:00 Informational] NUnit Adapter 3.10.0.21: Test execution started
[05/10/2018 10:10:00 Informational] Running all tests in C:\test.dll
[05/10/2018 10:10:00 Informational] NUnit3TestExecutor converted 9 of 9 NUnit test cases
[05/10/2018 10:10:04 Error] The active test run was aborted. Reason: Process is terminated due to StackOverflowException.

[05/10/2018 10:10:04 Informational] ========== Run test finished: 0 run (0:00:04.661362) ==========
Run Code Online (Sandbox Code Playgroud)

另一个测试类中的测试将运行,但是即使我注释掉其他测试,该类中的任何测试也不会运行。

从下面的代码中可以看出,除了作为参数和测试用例传递的变量名称之外,大多数测试在结构上与其他测试相同。

[TestFixture]
    class FluentAddressValidatorTest
    {
        private FluentAddressValidator validator;

        [OneTimeSetUp]
        public …
Run Code Online (Sandbox Code Playgroud)

c# nunit

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

标签 统计

c# ×2

angular ×1

angular-material ×1

asp.net ×1

dapper ×1

git ×1

nunit ×1

sql ×1