C# 无法使用github操作连接到SQL Server

C# 无法使用github操作连接到SQL Server,c#,.net,docker,github-actions,C#,.net,Docker,Github Actions,从上周五开始,我就一直在尝试解决这个问题,我正在尝试从我的.net应用程序连接到SQL Server数据库。有人能指出我做错了什么吗 name: .NET on: push: branches: [ CI567 ] pull_request: branches: [ CI567 ] jobs: container-job: runs-on: ubuntu-latest services: sql.data: image:

从上周五开始,我就一直在尝试解决这个问题,我正在尝试从我的.net应用程序连接到SQL Server数据库。有人能指出我做错了什么吗

name: .NET
on:
  push:
    branches: [ CI567 ]
  pull_request:
    branches: [ CI567 ]

jobs:
  container-job:
    runs-on: ubuntu-latest
    services:
      sql.data:
        image: mcr.microsoft.com/mssql/server:2019-latest
        env:
          SA_PASSWORD: WhatAmIDoing&Wrong
          ACCEPT_EULA: Y
        ports:
          - "1433:1433"
    steps:
    - name: list container images
      run: docker ps -a
    - name: checkout
      uses: actions/checkout@v2
    - name: Setup .NET
      uses: actions/setup-dotnet@v1
      with:
        dotnet-version: 5.0.x
    - name: Restore dependencies
      run: dotnet restore
      working-directory: ./LabManager
    - name: Build
      run: dotnet build --no-restore
      working-directory: ./LabManager
    - name: Restore donettool
      run: dotnet tool install --global dotnet-ef
      working-directory: ./LabManager
    - name: update database
      run: dotnet-ef database update --no-build
      working-directory: ./LabManager
    - name: Test
      run: dotnet test --no-build --verbosity normal
      working-directory: ./LabManager

以下是连接字符串:

  "ConnectionStrings": {
    "Test": "server=localhost,1433; User Id='SA'; Password='WhatAmIDoing&Wrong'"
  },
这就是错误:

Microsoft.Data.SqlClient.SqlException(0x80131904):建立到SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。(提供程序:TCP提供程序,错误:35-捕获到内部异常)

System.Net.Internals.SocketExceptionFactory+ExtendedSocketException(00000005,0xFFFDFFFF):名称或服务未知


我试着用单引号和双引号引用密码。使用docker run创建SQL Server容器。所有这些都导致此错误消息。

将连接字符串中的
服务器更改为
数据源

"ConnectionStrings": {
    "Test": "Data Source=localhost,1433; User Id='SA'; Password='WhatAmIDoing&Wrong'"
  },

这回答了你的问题吗?我在工作中第一件事就是试试这个。感谢you@riQQ这绝对是一本好书。但问题仍然存在(谢谢。我已经试过了。但是在我将外部端口从1433改为1401后,它就起作用了。不知道为什么。)