小编Ati*_*ris的帖子

在C#中将bool []装入对象[]的正确方法

我想找到转换bool[]object[]C#.NET 4.0 的最佳方法.
现在我有这个变量:

object[] objectArray  = new object [] { true, false, true };
string[] stringArray  = new string[]  { "true", "false", "true" };
bool[]   boolArray    = new bool[]    { true, false, true };
Run Code Online (Sandbox Code Playgroud)

一切都很好.对于'clear types',suc as boolobject,拳击工作正常(object o = true;).但在这种情况下,我只能从字符串数组转换为对象数组,但不能从布尔数组转换:

objectArray = stringArray; // OK 
objectArray = boolArray; // WRONG Cannot implicitly convert bool[] to object[]
Run Code Online (Sandbox Code Playgroud)

此外,在某些方法中,我发送一个对象数组列表.与前面的情况一样,我可以为字符串执行此操作(转换),但不能用于布尔数组:

List<object[]> testList;
testList = new List<object[]>() { objectArray }; // …
Run Code Online (Sandbox Code Playgroud)

c# arrays object

37
推荐指数
3
解决办法
6817
查看次数

如何使用EPPlus设置Excel边距

我需要能够以编程方式设置Excel工作簿的边距(打印机设置).
我找到了这个文件:

ExcelPrinterSettings.cs

有一个类有以下构造函数:

ExcelPrinterSettings(XmlNamespaceManager ns,
    XmlNode topNode,ExcelWorksheet ws)
Run Code Online (Sandbox Code Playgroud)

但我不知道我应该为前两个参数传递什么.
我已经有了生成工作表的代码,所以我可以将其作为第三个参数传递给我.

非常感谢任何建议.

excel epplus

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

将.history文件夹设置为智能感知忽略

我需要从智能感知中忽略.history文件夹。
现在,当我开始输入Focus时,它看起来像这样:

在此处输入图片说明

如您所见,intellisense将为我提供在.history文件夹中找到的所有相同类,这非常令人困惑(并找到正确的类)。

我尝试在vscode设置中以及在编辑器站点上找到某些内容,但没有成功。

.history文件夹从git中忽略,显示在资源管理器和tslint中:

"files.exclude": {
    "**/.history": true ...
},
"files.watcherExclude": {
    "**/.history/**": true ...
},
"tslint.exclude": ["**/.history/**"] ...
Run Code Online (Sandbox Code Playgroud)

如何从智能感知中实现忽略历史。


下一部分基于马特的答案

一个重要的假设:

Visual Studio Code本身不包含自动导入,因此需要扩展

解:

我正在使用扩展自动导入steoates.autoimport),其中包含该设置autoimport.filesToScan。我将默认值从更改"**/*.{ts,tsx}""{src,e2e,node_modules}/**/*.{ts,tsx}",现在一切正常。

visual-studio-code vscode-settings

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

Angular 中递归对象(通过调用静态方法链接)中的循环依赖

如果我从类递归调用方法,是否可以在单独的文件中创建树/递归对象并避免Circular dependency detected使用Angular CLI发出警告?

(在 angular 7 中测试)我知道这是依赖注入(文章)中的一个问题,但是作为构造函数用于来自外部 api 的数据或用于内部目的的对象呢?如果无论如何这都不是一个好主意,你如何解决它?(我想这个“子问题”的答案是模型的变化,那么我应该如何修改我的模型?)我寻找解决方案,但最接近的问题并没有帮助我将相同的方法应用于我的情况。

我有EmailsAttachments(带有附件的电子邮件 - 带有附件的整个电子邮件Email也可以是附件,Attachment是具有属性的分隔对象,内容可以是FileEmail,但在这里,为简单起见,假设附件始终为 1Email或 null)。
每个类都有用于从 JSON 对象创建实例的静态方法(我从 API 获取 JSON,然后我将通过调用fromJson顶级对象上的静态方法来创建表示 API 值的对象实例):

文件:app/model/email.ts(部分代码)

import { Attachment } from './attachment';

export class Email {
  // some attributes
  public attachment?: Attachment;

  public static fromJson(js: JSON): Email {
    const e = new Email(); …
Run Code Online (Sandbox Code Playgroud)

typescript angular-cli angular angular6 angular7

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

Node 的 Typescript 库作为 NPM 中的混合包

如何正确配置typescript tsconfig.jsonnpm package.json以创建混合 npm 包

我主要遵循这篇文章(但我也尝试过其他方法)

这是我的库gomshal 在 github 上的alpha 版本。我在这里描述的最后一个状态是在分支 Hybrid-2.3中。我想使用ESM 作为基本导入,并使用CommonJS 作为选项。这在本文的 2.3 章中进行了描述。我的 lib 文件通过Gomshal 类、枚举和接口导出。index.ts

项目结构

我的来源在"./src/lib". 我有两个 tsconfig.json 文件:tsconfig.esm.jsontsconfig.cjs.json。两者都包含相同的"./src/lib/**/*.ts"文件作为源。不同之处在于编译器选项:

// tsconfig.cjs.json for CommonJS
"compilerOptions": {
  "outDir": "./build/lib/cjs",
  "target": "ES5",
  "module": "CommonJS",
  ...
}

// tsconfig.esm.json for ES6 module
"compilerOptions": {
    "outDir": "./build/lib/esm",
    "target": "ES2015",
    "module": "ES2015",
  ...
} …
Run Code Online (Sandbox Code Playgroud)

commonjs node.js npm typescript ecmascript-6

6
推荐指数
0
解决办法
993
查看次数

编写比默认优先级更高的自定义 emmet 片段

如何创建具有最高优先级的自定义 emmet 片段以在 vscode 中显示?

当我更新html.json以添加自己的评论片段(使用作者)时,我仍然看到默认的 emmet“c”片段作为列表中的第一个:

"Comment": {
    "prefix": "c",
    "body":[
        "<!-- atiris: $1 -->$2"
    ],
    "description": "Insert comment into html code"
}
Run Code Online (Sandbox Code Playgroud)

这意味着我总是必须首先选择第二个选项。
是否有任何属性/设置可以优先考虑我自己的片段?

在此输入图像描述

emmet visual-studio-code

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

在异步任务中并行使用 WebView2

我有一个简单的默认 Windows 桌面窗体,Form1带有一个按钮btn_Go作为测试。
我想运行多个并行的 WebView2 实例并处理渲染页面中的 html 代码。为了并行运行 WebView2,我使用 SemaphoreSlim(设置为并行 2)。另一个 SemaphoreSlim 用于等待 WebView2 渲染文档(有一些时间延迟)。

但我的代码落在await webBrowser.EnsureCoreWebView2Async();. WebView2实例中调试器的内部异常webBrowser是:

{"Cannot change thread mode after it is set. (Exception from HRESULT: 0x80010106 (RPC_E_CHANGED_MODE))"} System.Exception {System.Runtime.InteropServices.COMException}

如何并行多次调用 WebView2 并处理所有 url?

完整演示代码:

using Microsoft.Web.WebView2.WinForms;
using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WebView2Test
{
  public partial class Form1 : Form
  {
    public Form1() { InitializeComponent(); }

    private void btn_Go_Click(object sender, EventArgs e) …
Run Code Online (Sandbox Code Playgroud)

c# parallel-processing multithreading semaphore webview2

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

PostgreSql 9.6中缺少max_parallel_degree配置参数

我无法做到set max_parallel_degree.

文档:https://wiki.postgresql.org/wiki/Parallel_Query

刚才我将postgresql测试数据库服务器从9.5.5更新9.6.服务器重新启动,启动并运行.根据文档,我应该能够为实际用户设置并行度,但此参数不在配置表中.

当我尝试set max_parallel_degree = 4;得到这个:
错误:无法识别的配置参数"max_parallel_degree"

我的配置:
ubuntu服务器(更新),在VirtualBox机器上的postgresql 9.6,分配了6个核心.
我的配置文件:/etc/postgresql/9.6/main/postgresql.conf不包含带"并行"字的行.
server_version = 9.6.1; psql版本= 9.6.1

select * from pg_settings where name like '%par%';
Run Code Online (Sandbox Code Playgroud)

结果:

debug_print_parse               | off
force_parallel_mode             | on  *
log_parser_stats                | off
max_parallel_workers_per_gather | 4   *
max_prepared_transactions       | 0
min_parallel_relation_size      | 1024
parallel_setup_cost             | 1000
parallel_tuple_cost             | 0.1
Run Code Online (Sandbox Code Playgroud)

*此设置是在运行psql后由我设置的.

如何在PostgreSql 9.6上启用并行查询?

postgresql configuration postgresql-9.6

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

Hacklang教程 - 扩展类中的这种类型

什么是黑客教程练习16的正确答案?
链接到教程:Hacklang教程

我的修改后的代码(未标记为解决方案):

<?hh
// The type 'this' always points to the most derived type
class MyBaseClass {
  protected int $count = 0;

  public function add1(): this {
    $this->count += 1;
    return $this;
  }
}

class MyDerivedClass extends MyBaseClass {
  public function print_count(): void { echo $this->count; }
}

function test(): void {
  $x = new MyDerivedClass();
  $x->add1()->print_count();
}
Run Code Online (Sandbox Code Playgroud)

我换过MyBaseClass通过this,但仍然没有被标记为正确的(绿色文本与Exercice号)..什么是正确的答案?

php facebook hacklang

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

在角反应形式验证器中使用google-libphonenumber

这是使用此库的基本用例。我需要验证该号码是否有效。我使用角度反应形式 自定义验证器
验证程序在文件中:validators/phone-number.validator.ts
第一步是获取google-libphonenumber PhoneNumberUtil实例

我的代码的当前状态是:

import { ValidatorFn, AbstractControl } from '@angular/forms';
import phoneUtil = require('google-libphonenumber');
const phoneUtilInstance = phoneUtil.PhoneNumberUtil.getInstance();

export function PhoneNumberValidator(): ValidatorFn {
  return (control: AbstractControl): { [key: string]: any } => {
    if (!phoneUtilInstance.isValidNumber(control.value)) {
      return { 'wrongNumber': { value: control.value } };
    }
    return null;
  }
}
Run Code Online (Sandbox Code Playgroud)

以反应形式使用(file contact.component.ts):

import { PhoneNumberValidator } from '@app/validators';
...
ngOnInit(): void { ...
this.editPhoneForm = this.formBuilder.group({
  id: [''],
  phone: ['', [
    Validators.minLength(3),
    PhoneNumberValidator()
  ]], …
Run Code Online (Sandbox Code Playgroud)

typescript libphonenumber angular-validation angular angular-reactive-forms

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

未处理的异常错误缺少resx

我的表单有问题,它会产生错误.如果我删除它们,它工作正常,但问题变得有点儿麻烦.

this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")))
this.pictureBox1.Image = ((System.Drawing.Image)
    (resources.GetObject("pictureBox1.Image")));
System.ComponentModel.ComponentResourceManager resources = 
    new System.ComponentModel.ComponentResourceManager(typeof(LYNXAntiCheatForm));
Run Code Online (Sandbox Code Playgroud)

错误消息:

mscorlib.dll中出现未处理的"System.Resources.MissingManifestResourceException"类型异常

附加信息:

找不到适合指定文化或中性文化的资源.确保在编译时将"LYNXAntiCheat.LYNXAntiCheatForm.resources"正确嵌入或链接到程序集"LYNXAntiCheatForm"中,或者所有所需的附属程序集都是可加载和完全签名的.

题:

如何在不删除这三行代码的情况下真正解决此问题.我确实尝试添加一个名为"LYNXAntiCheat"的resx文件

我使用Visual Studio 2012 Express来编译这个C#项目.

c# forms resources

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