我正在研究OData和TypeScript,在了解OData客户端代码生成器时可以为获得OData端点的TypeScript接口做类似的事情而感到震惊。重构时真的有帮助:)
所以想知道是否有人对此事有经验。喜欢他们使用什么工具。(如果存在)他们遇到的问题。
[EnableQuery(PageSize=20)]和之间有什么区别[EnableQuery(MaxTop=20)]?
据我所知,他们两个都为结果设置了最大限制。
调用GET odata/Products?$top=100它们两个都只给我20个结果。
我正在尝试列出复选框,但Html.LabelFor无效.它不断生成<label for="">Some text</label>,请注意空For属性.
在尝试使用显示模板之前,我尝试过for和foreach循环,但它们都有这个问题.我拒绝相信手动编写输入字段是唯一的解决方案.所有的帮助/提示非常感谢.
public class MyViewModel
{
public string Name { get; set; }
public bool Selected { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
public ActionResult MyController()
{
var model = new List<MyViewModel>();
model.Add(new MyViewModel() { Name= "Foo" });
model.Add(new MyViewModel() { Name= "Bar" });
return View(model);
}
Run Code Online (Sandbox Code Playgroud)
@model IEnumerable<MyViewModel>
<div>
@Html.DisplayFor(x => Model)
</div>
Run Code Online (Sandbox Code Playgroud)
@model MyViewModel
<p>
@Html.LabelFor(model => model.Selected, Model.Name)
@Html.EditorFor(model => model.Selected)
</p>
Run Code Online (Sandbox Code Playgroud)
<div>
<p>
<label for="">Foo</label>
<input class="check-box" …Run Code Online (Sandbox Code Playgroud) 我正在尝试在加载MatTable时隐藏其行。
我无法做到这一点:(有关完整代码,请参见StackBlitz)
<div *ngIf="!isLoading">
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</div>
Run Code Online (Sandbox Code Playgroud)
因为MatTable会引发各种错误:(
我不能放进去*ngIf="!isLoading",MatRow因为它已经有了结构指令。
我想避免CSS欺骗。
我没看到什么?请赐教。
根据http://msdn.microsoft.com/en-us/library/system.io.path.getinvalidpathchars%28v=vs.110%29.aspx Path.GetInvalidFileNameChars()应该给出以下输出
// Note: Some characters may not be displayable on the console.
// The output will look something like:
//
// The following characters are invalid in a path:
// Char Hex Value
// ", 0022
// <, 003C
// >, 003E
// |, 007C
// ...
//
// The following characters are invalid in a filename:
// Char Hex Value
// ", 0022
// <, 003C
// >, 003E
// |, 007C
// ...
Run Code Online (Sandbox Code Playgroud)
然而我只是得到
Char …Run Code Online (Sandbox Code Playgroud) 我有以下TypeScript类
module Test {
"use strict";
class Foo {
public static name = "foo";
}
}
Run Code Online (Sandbox Code Playgroud)
很简单.
但是在Chrome中运行时出现以下错误:
未捕获的TypeError:无法分配给函数'function Foo(){}'的只读属性'name'
这是生成的javascript:
var Test;
(function (Test) {
"use strict";
var Foo = (function () {
function Foo() {
}
Foo.name = "foo";
return Foo;
}());
})(Test || (Test = {}));Run Code Online (Sandbox Code Playgroud)
如果我使用不同的名称,那么name我不会收到错误.
module Test {
"use strict";
class Foo {
public static huh = "foo";
}
}
Run Code Online (Sandbox Code Playgroud)
到底是怎么回事?
我正在尝试使用import我的html模板,以便webpack能够识别它们并在构建时包含它们.(webpack -d)
根据这个GitHub问题,我应该这样做
declare module '*.html' {
const _: string;
export default _;
}
Run Code Online (Sandbox Code Playgroud)
然后import template from './myTemplate.html';应该工作.
但它并没有完全解决问题.
import template from './myTemplate.html';
console.log(template); // undefined
Run Code Online (Sandbox Code Playgroud)
然而,这"工作"
import * as template from './myTemplate.html';
console.log(template); // <p>Hello world!</p>
Run Code Online (Sandbox Code Playgroud)
很奇怪.
但现在这不起作用
$routeProvider.when("/test", {
template: template, // ERROR! template is typeof(*.html) expected string
controller: MyController,
controllerAs: "$ctrl"
});
Run Code Online (Sandbox Code Playgroud)
但是,如果我将*.html模块更改为
declare module '*.html' {
const _: string;
export = _; // changed this
}
Run Code Online (Sandbox Code Playgroud)
我现在可以做 …
angularjs typescript angular-routing webpack-3 typescript-2.5
IsDevelopment().我正在使用 ASP.NET Core 3.1
我想我会尝试新的Razor Pages,因为它们被宣传为非常简单。
@page
@using MyProject.Pages.Pdf
@model IndexModel
<h2>Test</h2>
<p>
@Model.Message
</p>
Run Code Online (Sandbox Code Playgroud)
namespace MyProject.Pages.Pdf
{
public class IndexModel : PageModel
{
private readonly MyDbContext _context;
public IndexModel(MyDbContext context)
{
_context = context;
}
public string Message { get; private set; } = "PageModel in C#";
public async Task<IActionResult> OnGetAsync()
{
var count = await _context.Foos.CountAsync();
Message += $" Server time is …Run Code Online (Sandbox Code Playgroud) 我在让我的选择器工作时遇到了一些麻烦.FakeApiService虽然我可以看到通话,但我的组件没有更新书籍.因此,行动和效果是有效的.
我相信这个问题与我的使用有关@ngrx/Entity.特别是这个
export const getBooksState = createFeatureSelector<DemoState>('demo');
Run Code Online (Sandbox Code Playgroud)
和
export const { selectAll } = fromBook.adapter.getSelectors();
Run Code Online (Sandbox Code Playgroud)
我已经看过他们提供选择器功能的教程,getSelectors()但这不是必需的.
我希望有人可以发现我哪里出错了,如果有人对结构/设置有一些建议我都是耳朵:)
这是我的设置.
import { Action } from '@ngrx/store';
import { Book } from '../../models/book';
export enum BookActionTypes {
Load = '[Book] Load',
LoadSuccess = '[Book] Load Success',
LoadFail = …Run Code Online (Sandbox Code Playgroud) 我试图在DropDownList里面放一个,WebGrid但我无法弄清楚该怎么做:(
我试过的事情:
grid.Column("Id", "Value", format: ((item) =>
Html.DropDownListFor(item.SelectedValue, item.Colors)))
Run Code Online (Sandbox Code Playgroud)
和
grid.Column(header: "", format: (item => Html.DropDownList("Colors", item.Colors)))
Run Code Online (Sandbox Code Playgroud)
和
grid.Column(header: "", format: Html.DropDownList("Colors"))
Run Code Online (Sandbox Code Playgroud)
和其他各种各样,但我无法让它工作.任何帮助深表感谢.
public class PersonViewModel
{
public string Name { get; set; }
public int Age { get; set; }
public SelectList Colors { get; set; }
public int SelectedValue { get; set; }
}
public class ColorViewModel
{
public int ColorID { get; set; }
public string ColorName { get; set; }
} …Run Code Online (Sandbox Code Playgroud) 我正在尝试配置我的Object Mapper而不知道我正在使用哪个mapper.:/
这可能听起来有点奇怪.这样做的原因是我正在尝试使用洋葱架构,因此我的UI无法了解我的基础架构中的Object Mapper.请参阅此解决方案以获取示例.

我在弄清楚如何"委托"无默认映射行为时遇到了一些麻烦.像:
Mapper
.CreateMap<MyModel, MyDestViewModel>()
.ForMember(
dest => dest.SomeDestinationProperty,
opt => opt.MapFrom(src => src.SomeSourceProperty)
);
Run Code Online (Sandbox Code Playgroud)
我在我的MVC项目中设置了一个从Global.asax调用的类,这是我想要配置映射的地方.
public static class MapConfig
{
public static void RegisterMaps()
{
}
}
Run Code Online (Sandbox Code Playgroud)
我以为我可以做以下事情.(IMapper是位于Domain中的自定义接口)
public static void RegisterMaps(HttpConfiguration config)
{
var mapper = config.DependencyResolver.GetService(IMapper);
mapper.CreateMap<MyModel, MyViewModel>();
}
Run Code Online (Sandbox Code Playgroud)
现在......我将如何设置像.ForMember这样的特殊行为?请记住,它不能是AutoMapper特定的.
我正在思考这些方面的事情,mapper.CreateMap<MyModel, MyViewModel>(Expression<Func<T>>)其中Func会做一些我现在无法弄清楚的黑魔法:( - 我是在正确的道路上还是我错过了一些必要的东西?
我试图编写一个测试,检查派生类中的方法是否未被错误覆盖.所以我尝试了以下内容.但无论我尝试什么,它似乎都不允许我"注入"我的对象.
[Theory]
[xxxData(new BaseClass())]
[xxxData(new DerivedClass())]
public void Test_Stuff(BaseClass obj)
{
// ...
}
Run Code Online (Sandbox Code Playgroud) 我想得到/设置范围下拉列表的选定索引+偏移量.
因此,当我选择名为"Third"的选项时,该$scope.selectedIndex值应为3.但它是obj3.
这是我到目前为止所提出的.我希望track by能解决它,但它没有:(
调节器
$scope.foos = [obj1, obj2, obj3]
Run Code Online (Sandbox Code Playgroud)
视图
<select data-ng-model="selectedIndex"
data-ng-options="foo.name for foo in foos track by foos.indexOf(foo) + 1">
<option value=""></option>
</select>
Run Code Online (Sandbox Code Playgroud)
生成的视图(生成的值与预期一致)
<select data-ng-model="selectedIndex" data-ng-options="foo.name for foo in foos track by foos.indexOf(foo) + 1">
<option value="" class=""></option>
<option value="1" label="First">First</option>
<option value="2" label="Second">Second</option>
<option value="3" label="Third">Third</option>
</select>
Run Code Online (Sandbox Code Playgroud)
我不能使用数组技巧
ng-options="idx as choice for (idx, choice) in choices"
Run Code Online (Sandbox Code Playgroud)
因为idx需要被抵消 +1
typescript ×4
c# ×3
angular ×2
angularjs ×2
odata ×2
asp.net-core ×1
automapper ×1
javascript ×1
ng-options ×1
ngrx ×1
ngrx-entity ×1
odata-v4 ×1
razor-pages ×1
razorengine ×1
webgrid ×1
webpack-3 ×1
xunit ×1
xunit.net ×1