我最近在一个项目中遇到了这个代码 - 我认为这是错误的:
if(condition)
{
//Whatever...
};
Run Code Online (Sandbox Code Playgroud)
注意闭合支撑后的半冒号.
有谁知道这是什么影响?
我认为它没有任何影响,但会认为它会导致编译器错误.
我在我的 Web API 项目中遇到了一段代码,它有一个这样结构的类:
public class QuestionDto
{
public bool disabled {get;set;}
public int id {get;set;}
public int order {get;set;}
public PositionDto pagePosition {get;set;}
public string title {get;set;}
}
public enum PositionDto
{
FullWidth = 0,
Half = 1
}
Run Code Online (Sandbox Code Playgroud)
有一个 API 调用返回QuestionDto
,如下:
[Route("")]
[HttpGet]
[ResponseType(typeof(QuestionDto))]
public async Task<IHttpActionResult> GetCategoryQuestions()
{
return Ok(new QuestionDto { PagePosition = PagePositionDto.Half });
}
Run Code Online (Sandbox Code Playgroud)
这是 Chrome 控制台网络选项卡中的一个片段,显示了此 API 调用的响应:
枚举如何返回它的文本值,而不是它的 int 值?
为了进一步混淆这一点,如果我然后采用相同的类结构并将其复制并粘贴到不同的项目,则返回此对象的 api 调用将返回 int 值 - 这正是我所期望的。
那么第一个项目可以返回字符串值吗?
是否有一些设置可以使此枚举返回其字符串值?
我正在尝试将放置事件附加到 HTML div:
document.getElementById('sub-main').addEventListener("drop",
() => {console.log('DROP')});
Run Code Online (Sandbox Code Playgroud)
但它不火。添加用于测试目的的点击事件有效 - 此点击事件触发:
document.getElementById('sub-main').addEventListener("click",
() => {console.log('Click')});
Run Code Online (Sandbox Code Playgroud)
我读过从返回 falseondragover
会有所帮助:
document.getElementById('sub-main').addEventListener("ondragover",
() => {return false});
document.getElementById('sub-main').addEventListener("drop",
() => {console.log('Drop')});
Run Code Online (Sandbox Code Playgroud)
但这也不起作用。我尝试设置draggable
为 true:
document.body.setAttribute('draggable', true);
Run Code Online (Sandbox Code Playgroud)
但也没有运气!
将事件侦听器记录到控制台并getEventListeners()
显示所有事件,甚至是我选择的任何随机事件名称:
getEventListeners(document.getElementById('sub-main'));
Run Code Online (Sandbox Code Playgroud)
但是 drop 事件仍然没有触发。有任何想法吗?
我有以下(简化的)代码。
public class Controller
{
private readonly IService _service;
public Controller(IService service)
{
_service = service;
}
public async Task<IHttpActionResult> Create(MyObject object)
{
var result = _service.method(object);
if (!result.Succeeded)
{
return this.GetErrorResult(object);
}
}
}
Run Code Online (Sandbox Code Playgroud)
而 SimpleInjector 用于注入 _service 与其实现类之间的依赖关系,如下所示:
public static void Register(Container container)
{
container.Register<IService, Service>();
}
Run Code Online (Sandbox Code Playgroud)
请注意,注入和单元测试对我来说是新的,所以我不完全理解它们,但正在学习。
如果我通过 Swagger 运行应用程序,一切正常。
请注意,Register
当我通过 Swagger 运行应用程序时会调用该函数。
现在,我正在尝试使用 NUnit 设置一些单元测试,并像这样模拟 IService 对象:
var Service = new Mock<IService>();
Controller _controller = new Controller(Service.Object);
_controller.Create(new MyObject object());
Run Code Online (Sandbox Code Playgroud)
到目前为止,这对我来说似乎是正确的 - 尽管我不确定?
问题是对于单元测试, …
我有以下CSS在元素后添加一些文本:
header h1:after {
content:"Bold \A not bold";
white-space: pre;
}
Run Code Online (Sandbox Code Playgroud)
我的目标是使第一个单词变为粗体,而其余部分则不是粗体.
我知道如何使所有文本变粗,我知道我可以使用HTML来实现这一点,但就我目前的目的而言,我想尝试使用CSS实现这一点.
对谷歌没有搜索结果,可以吗?
我正在做两个类似的项目 - 但我没有创建它们中的任何一个.
它们都具有相同的本地上下文,如下所示:
using Microsoft.AspNet.Identity.EntityFramework;
public class LocalContext :
IdentityDbContext
<ApplicationUser, ApplicationRole, int, ApplicationUserLogin, ApplicationUserRole, ApplicationUserClaim>
{
//.....
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
AddConfigurations(modelBuilder);
}
}
Run Code Online (Sandbox Code Playgroud)
在整个项目中搜索引用以OnModelCreating
返回上面提到的2个实例,以及命名空间中对此方法的引用Microsoft.AspNet.Identity.EntityFramework
这些项目是使用Onion架构制作的,我使用Swagger运行REST层.
问题是,在其中一个项目中,OnModelCreating
当我启动应用程序(我期望)时会调用它,而在另一个项目中,它会在用户第一次执行操作时调用.
谁能解释为什么会这样?
我假设某个地方有一个触发此调用的设置 - 但是我找不到它 - 正如我上面所说的,我已经搜索了整个项目,但找不到任何调用此方法的地方.
据我所知,两个项目之间的所有参考文献都是相同的 - 有人可以帮忙吗?
我在我的 React 应用程序中制作了一个 highcharts 柱状图,现在正在尝试向图表添加一个 onClick 事件。我的目标是当用户点击一列时,我可以获取 X 和 Y 轴的值,然后从页面调用一个函数。
onClick 事件是使用 plotoptions 实现的,如下所示:
plotOptions={{
series: {
cursor: 'pointer',
point: {
events: {
click: () => {
this.fuction.call(this, 1);
}
}
}
}
}}
Run Code Online (Sandbox Code Playgroud)
问题在于我可以调用该函数,但无法访问该列的值。
所以,我试试这个:
plotOptions={{
series: {
cursor: 'pointer',
point: {
events: {
click: function () {
console.log(this);
}
}
}
}
}}
Run Code Online (Sandbox Code Playgroud)
这样,我可以访问列上的值,this
但不能调用该函数,因为它不保存当前页面对象。
我的问题是,如何将两者结合起来,以便访问所选列的值并调用页面上的函数?
我试过这个:
plotOptions={{
series: {
cursor: 'pointer',
point: {
events: {
click: function (e) {
console.log(this);
console.log(e);
}
}
}
} …
Run Code Online (Sandbox Code Playgroud) 我的HTML
输入如下:
<input type="text" value="Link etc..." readOnly={true}/>
Run Code Online (Sandbox Code Playgroud)
我试图使输入内的文本在页面上显示输入的位置自动突出显示.
我发现了许多问题,显示了如何执行此操作onClick
等,但没有在输入显示时默认突出显示文本的问题.
我确信这是一项简单的任务 - 但我无法在任何地方找到答案!
注意:我确信我可以通过在我的页面上触发JavaScript函数来解决如何实现这一点 - 但这似乎有点矫枉过正 - 我试图在HTML声明中实现这一点
我也在使用React - 但我不认为这与这个问题有关吗?
我有以下课程:
public class testClass
{
public string name { get; set; }
public int id { get; set; }
public int age { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
以及以下代码:
var list = new List<testClass>();
list.Add(new testClass { name = "name", id = 1, age = 30 });
list.Add(new testClass { name = "name", id = 2, age = 22 });
list.Add(new testClass { name = "name", id = 3, age = 20 });
list.Add(new testClass { name = "name", id = …
Run Code Online (Sandbox Code Playgroud) 我有以下查询(SQL 服务器):
DECLARE @UserId INT;
SET @UserId = //... set by dynamic variable
SELECT *
FROM Users
WHERE userId = @UserId
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果为@UserId
空,查询将无法正确评估。
如果变量为空或不为空,如何编写此查询以正确评估?
编辑:
有很多建议使用以下内容:
WHERE (@UserId IS NULL OR userId = @UserId)
Run Code Online (Sandbox Code Playgroud)
或类似。
在这种情况下,如果有一个包含 3 个条目的表,其中 userId 为 1,2 和 3,则变量“@UserId”为 NULL,则此查询将返回所有 3 个条目。我实际上需要它返回的是没有条目,因为它们的 userId 都不为 NULL
c# ×5
javascript ×2
compilation ×1
css ×1
enums ×1
events ×1
highcharts ×1
html ×1
input ×1
linq ×1
mocking ×1
moq ×1
nunit ×1
onclick ×1
reactjs ×1
sql ×1
sql-server ×1
termination ×1