YSGStudyHards / DotNetGuide

🌈【C#/.NET/.NET Core学习、工作、面试指南】记录、收集和总结C#/.NET/.NET Core基础知识、学习路线、开发实战、编程技巧练习、学习视频、文章、书籍、项目框架、社区组织、开发必备工具、常见面试题、面试须知、简历模板、以及自己在学习和工作中的一些微薄见解。希望能和大家一起学习,共同进步。如果本知识库能为您提供帮助,别忘了给予支持哦(关注、点赞、分享)💖。

Home Page:https://www.yuque.com/ysgstudyhard/da6e0c

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

✋C#/.NET/.NET Core疑难问题答疑

YSGStudyHards opened this issue · comments

专门为C#/.NET/.NET Core疑难问题提供问答的Issues,大家可以把平时工作和学习中遇到的一些疑难问题分享出来,看到了问题会积极给予解答。

问题:
IIS托管.NET Fx4.6的项目PUT和DELETE请求被拒绝处理。

解决方案:
让IIS支持.NET Web Api PUT和DELETE请求

问题:
.NET如何实现指定图片地址下载并转换Base64字符串?

解决方案:
.NET指定图片地址下载并转换Base64字符串

问题:
Visual Studio 开发C#如何配置多环境?

解决方案:
Visual Studio C# 多环境配置 Web.config

问题:
.NET应用本地运行请求正常,但是发布阿里云服务器刚开始提示是请求被中止: 未能创建 SSL/TLS 安全通道,之后经过一番修改以后就是提示基础连接已经关闭: 发送时发生错误。

解决方案:
.NET HttpWebRequest(请求被中止: 未能创建 SSL/TLS 安全通道)和(基础连接已经关闭: 发送时发生错误)问题查找解决

commented

问题:
离线下载解决Nuget程序包及其依赖包

解决方案:
参考链接https://www.cnblogs.com/sper/p/nuget-package-download.html

由于使用的一台电脑没有联网,但是需要asp.net core项目时使用到一个package,于是在nuget.org上手动下载。但是最后发现,依赖的包实在太多,手动下载太费时。于是晚上花时间研究了一下这个问题,随笔记录一下,作为个人分享。

解决这个问题,分为两个步骤:

利用nuget.exe在可联网的机器上下载需要安装的程序包。
将程序包拷贝到不联网机器,使用本地包源安装程序包。
步骤二可以参考我的这个帖子https://www.cnblogs.com/sper/p/5697441.html)难点主要在第一步,具体方法如下:

(1)下载nuget命令行程序nuget.exe

打开https://www.nuget.org/downloads,下载Windows x86 Commandline程序。这是解决手动下载依赖包弊端的根本解决方法。

(2)下载需要使用的程序包。

运行cmd打开命令提示符窗口,执行> nuget install <package_name> -SolutionDirectory <save_path> -PackageSaveMode nupkg

根据自己的实际情况,分别替换<package_name>和<save_path>。如果需要下载指定的包版本,通过 -Version 选项来指定包的版本。

下载的程序包以及所有的依赖包将会存储在<save_path>目录的packages文件夹下。

(3)拷贝下载的nupkg数据包。

为了减少拷贝文件的大小,我们只需要.nupkg格式的文件。此时,通过一段python程序来集中这些程序包的nupkg文件。代码如下:

import os

for pkg in os.listdir("packages"):
    pkgpath = os.path.join("packages", pkg)
    filename = "%s.nupkg" % pkg
    fullpath = os.path.join(pkgpath, filename)
    if os.path.isfile(fullpath): 
        open(filename, "wb").write(open(fullpath, "rb").read())
    else:
        print("%s is not exist." % filename)
else:
    print("Copy finished.")