在实现 csp-header 时,我已将我的策略指定为:
default-src 'self'; script-src www.gstatic.com;由于我没有script-src-elem在我的 csp 策略中声明指令,如本mdn 文档中所述,我期望定义的策略也script-src用于script-src-elem指令。但是,我看到违规被报告为"viloated-directive":"script-src-elem" "blocked-uri":"https://www.gstatic.com/blah/blah"。
知道为什么会发生这种行为吗?
在SSDT项目中(使用VS2017/VS2015,SSDT版本15.1.61702.140),我无法构建我的项目.编译器一直在我的PostDeploymentScript中抱怨sql语句(是的,我已经将BuildAction属性设置为PostDeploy).sql语句是:
if ('$(env)' = 'dvp')
BEGIN
PRINT 'creating users for dvp'
:r .\SecurityAdditions\usersdvp.sql
END
ELSE IF ('$(env)' = 'qat')
BEGIN
PRINT 'creating users for qat'
:r .\SecurityAdditions\usersqat.sql
END
Run Code Online (Sandbox Code Playgroud)
实际的错误消息是:
D:\My\File\Path\PostDeploymentScript.sql (lineNum, col): Error: SQL72007:
The syntax check failed 'Unexpected end of file occurred.' in the batch near:
Run Code Online (Sandbox Code Playgroud)
在最后一行(结束)的错误消息中引用的行号.知道是什么导致了这个吗?
我对 Postgres 还很陌生,我不敢相信仅仅声明一个变量就这么困难。我确实遇到过其他 SO 帖子,但没有一个对我的情况有帮助。我想要的只是在 postgres 中编写如下所示的脚本:
declare @age int = 10;
select * from person p where p.age > @age;
Run Code Online (Sandbox Code Playgroud)
根据这里的SO帖子,我尝试过:
DO
$$
DECLARE
overTheAgeOf int := 15;
BEGIN
select *
from person
where age > overTheAgeOf;
END
$$;
Run Code Online (Sandbox Code Playgroud)
这给了我错误:[42601] ERROR: query has no destination for result data
然后我尝试返回脚本的结果:
return (select *
from person
where age > overTheAgeOf);
Run Code Online (Sandbox Code Playgroud)
这给了我另一个错误:ERROR: RETURN cannot have a parameter in function returning void
如何声明变量并在后面的脚本中使用它?
我在VS2013和VS2015RC中打开相同的MVC解决方案,完全相同的代码,但是我的VS2015RC告诉我在我的.cshtml页面上有很多错误,因为VS2013没有错误.主要问题是由于VS2015中的错误,我没有得到任何智能感知.
可能是什么导致了这个?另外,当我在VS2015中构建解决方案时,它说它成功了吗?代码段:
<!DOCTYPE html>
<html>
<head>
<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/jquery-2.1.3.min.js")" type="text/javascript"></script>
<meta name="description" content="The description of my page" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body>
<div id="header">
<div class="title">ABC</div>
</div>
<div id="categories">
@{ Html.RenderAction("Menu", "Navigation"); }
</div>
<div id="content">
@RenderBody()
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
vs2013
vs2015
我有一个使用ngbPopover和的嵌套组件popoverTitle。将显示的内容将通过@Input()属性给出。
问题:
如果给定的输入类似于"<b>Some Title</b>",我希望它是粗体的,而不是按字面显示。
我尝试按照此处的文档中的描述使用,但就我而言,无论我绑定什么,都会有标记。我的标记不是预定义的。所以这没有帮助。
import { Component, Input } from "@angular/core";
@Component({
selector: "help-popup",
template: `<span
class="fa fa-question-circle-o btn-outline-info btn-sm"
style="font-size: 18px" triggers="focus:blur"
[placement]="placement"
[ngbPopover]="helpText"
container="body"
[popoverTitle]="helpTitle"></span>`
})
export class HelpPopupComponent {
@Input() placement: string = "top";
@Input() helpText: string = "";
@Input() helpTitle: string = "";
}
Run Code Online (Sandbox Code Playgroud)
我想像这样使用它:
<help-popup helpTitle="<b>Bold Title</b>"
helpText="<u>Underline text</u>"></help-popup>
Run Code Online (Sandbox Code Playgroud) 在Angular,有一个方法来识别FormGroup/ FormControl在一个动态FormArray发射的valueChanges事件?
我FormArray是动态的。它开始是空的和用户可以添加FormGroup到FormArray通过点击一个按钮。
当valueChanges时,我需要重新验证控件。由于我不知道哪个控件发出了该事件,因此我将遍历整个控件FormArray并验证所有FormGroup(FormControl即使仅更改了一个控件),这是每次数组中的任何内容发生更改时。我如何避免这样做?
this.myFormArray
.valueChanges
.subscribe(data => this.onValueChanged(data));
onValueChanged(data?: any): void {
// the data I receive is an entire form array.
// how can I tell which particular item emitted the event,
// so I don’t need to loop through entire array and run validation for all items.
for (let control in this.myFormArray.controls) {
// run …Run Code Online (Sandbox Code Playgroud) 我试图编写代码,以便我可以记录错误消息.我试图用日期命名文件,并希望每天创建一个新的日志文件.经过一番浏览后,我带来了以下代码......
class ErrorLog
{
public void WriteErrorToFile(string error)
{
//http://msdn.microsoft.com/en-us/library/aa326721.aspx refer for more info
string fileName = DateTime.Now.ToString("dd-MM-yy", DateTimeFormatInfo.InvariantInfo);
//@ symbol helps to ignore that escape sequence thing
string filePath = @"c:\users\MyName\mydocuments\visual studio 2012\projects\training\" +
@"discussionboard\ErrorLog\" + fileName + ".txt";
if (File.Exists(filePath))
{
// File.SetAttributes(filePath, FileAttributes.Normal);
File.WriteAllText(filePath, error);
}
else
{
Directory.CreateDirectory(filePath);
// File.SetAttributes(filePath, FileAttributes.Normal)
//Throws unauthorized access exception
RemoveReadOnlyAccess(filePath);
File.WriteAllText(filePath, error);
}
}
public static void RemoveReadOnlyAccess(string pathToFile)
{
FileInfo myFileInfo = new FileInfo(pathToFile);
myFileInfo.IsReadOnly = false;
myFileInfo.Refresh();
} …Run Code Online (Sandbox Code Playgroud) 我在DataSet中有一个带有列C1(PK),C2和C3(唯一值)的DataTable dt1,删除了一些行后,我将进行AcceptChanges.我有另一个DataTable dt2,其结构与dtA相同.我想删除dtA中存在于dtB中的行,比较C3(唯一值)并执行AcceptChanges.
我可以达到非常接近,但不是我想做的事情,除了下面(从这里学到):
var a = dt1.AsEnumerable().Select(r => r.Field<Guid>("C3"));
var b = dt2.AsEnumerable().Select(r => r.Field<Guid>("C3"));
var c = a.Except(b);
Run Code Online (Sandbox Code Playgroud)
这种方法的问题是,我只得到属于C3列的值列表.我可以做多一些,如图这里,但话又说回来,我将有一个新的DataTable,我不会还是改变现有的DT1表.
我想到的第二种方法是做如下的事情:
foreach (DataRow r1 in ds1.Tables[0].Rows)
{
foreach(DataRow r2 in dt2.Rows)
{
if (r1.Field<Guid>("Guid1") == r2.Field<Guid>("Guid2"))
{
r1.Delete();
}
}
}
Run Code Online (Sandbox Code Playgroud)
删除行后,我收到错误消息"此行已从表中删除,并且没有任何数据." 我在这里错过了什么?
我也有一种感觉,可能有更好的方法这样做,只是不知道大声笑.
如何在 javascript 中执行不区分大小写的查找set?
我遇到的情况是,我有一组允许的字符串,但不能确保它们处于什么情况。我需要根据该组验证用户输入。我怎样才能实现这个目标?
const countries = new Set();
countries.add("USA");
countries.add("japan");
// returns false, but is there any way I could get
//`my set to ignore case and return true?`
console.log(countries.has("usa"));
console.log(countries.has("USA"));
Run Code Online (Sandbox Code Playgroud) 因此,我向一位高级开发人员寻求帮助,以解决与事务范围相关的问题,他来到我的办公桌前,在 SqlBulkCopy 上使用了不同的重载,对于 SqlBulkCopyOptions 参数,他做了如下所示的操作:
SqlBulkCopyOptions options = (SqlBulkCopyOptions.FireTriggers | SqlBulkCopyOptions.CheckConstraints);
Run Code Online (Sandbox Code Playgroud)
它现在有效,但我不明白bitwise or这里的意思。我以为我对它有一些了解,从来没有真正使用过它,但是这个用法让我摸不着头脑。是的,我没有要求我的前辈向我解释它。我希望有人能帮助我理解该声明的含义。网上的大多数按位或示例都带有一些数字,我得到了(我认为),但是这个?
c# ×4
angular ×2
bitwise-or ×1
browser ×1
dataset ×1
datatable ×1
ecmascript-6 ×1
exception ×1
javascript ×1
ng-bootstrap ×1
postgresql ×1
razor ×1
rxjs ×1
set ×1
sqlbulkcopy ×1
sqlcmd ×1
web ×1
winforms ×1