我相信这很简单,我似乎无法找到正确的方法来显示模型中列表中项目的显示名称.
我的简化模型:
public class PersonViewModel
{
public long ID { get; set; }
private List<PersonNameViewModel> names = new List<PersonNameViewModel>();
[Display(Name = "Names")]
public List<PersonNameViewModel> Names { get { return names; } set { names = value; } }
}
Run Code Online (Sandbox Code Playgroud)
和名称:
public class PersonNameViewModel
{
public long ID { get; set; }
[Display(Name = "Set Primary")]
public bool IsPrimary { get; set; }
[Display(Name = "Full Name")]
public string FullName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
现在,我想创建一个表来显示一个人的所有名称,并获取DisplayNameFor FullName.明显,
@Html.DisplayNameFor(model => model.Names.FullName);
Run Code Online (Sandbox Code Playgroud)
不行,并且 …
在ASP.NET WebAPI中,我知道您可以使用global.aspx中的CamelCasePropertyNamesContractResolver()将默认的json格式化程序设置为使用驼峰大小写,这将强制所有json序列化为驼峰大小写.
但是,我需要能够在"每个控制器"实例上设置它,而不是全局解决方案.
这可能吗?
如果标题不清楚,请道歉.
我正在尝试从ASP.NET MVC中的表单提交返回我的模型.
我的问题几乎和这个问题一样,只是因为我没有List<Model>
一个像以下那样的模型:
public Model
{
string UserName {get; set;}
string Password {get; set;}
List<Roles> UserRoles {get; set;}
}
Run Code Online (Sandbox Code Playgroud)
我需要UserRoles作为管理员在创建新用户时可以选择的复选框.我的问题是,我不确定如何对列表使用'@ Html.CheckBoxFor'.我试过这个:
@for (var i = 0; i < Model.UserRoles.Count();i++ )
{
@Html.HiddenFor(model => model.UserRoles[i].RoleID)
@Html.CheckBoxFor(model => model.UserRoles[i].Selected)
@Html.LabelFor(model => model.UserRoles[i].Name)
}
Run Code Online (Sandbox Code Playgroud)
这绝不起作用 - 页面上的每个标签都是"名称",我的列表在POST中是空的.有人可以给我任何指导吗?
不运行应用程序时,在接口类型的方法上按F12(转到定义)将转到接口本身.
是否存在任何关键组合(或者我可以制作的组合),这将允许我提供跳转到的默认实现,或者允许我快速选择要执行的实现?
我们的应用程序中有几个层,它可以节省大量时间直接跳转到Mock
或Real
实现,而不是在源代码管理中导航到它们.
有很多这样的问题,但我相信我的案例是独一无二的.
我在内部单击文本框时会弹出一个选择器视图.用户在选择器视图中选择他们的位置,并将其放入文本框中.
打开选择器视图时,滑块位于第一个元素上,但是如果我单击完成按钮以最小化选择器视图,则不会选择任何元素(即,您必须向下滚动并向上选择第一个元素)
我试过了
[pickerView selectRow:0 inComponent:0 animated:YES];
Run Code Online (Sandbox Code Playgroud)
以及它的各种组合,但它只将滑块放在该元素上,而不是实际选择它.
一些答案说要在viewDidLoad()方法中应用上面的代码,但不幸的是我从Web服务中提取位置数组并且不能这样做.
理想情况下,我想工作 - 用户在文本框中单击,选择器视图正常弹出,如果在此时单击完成按钮,则选择第一个项目.
先感谢您
我不能为我的生活弄清楚这一点.我有一个带有Get和Post方法的web api控制器.使用和不使用参数时,Get方法可以正常工作,但是当我尝试向其添加String参数时,帖子会中断.以下是我的代码.
路线:
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "{controller}/{id}",
defaults: new { id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
控制器:
public class AuditController : ApiController
{
public String Post(String test)
{
return "Success : " + test;
}
public String Get(String test)
{
return "Success : " + test;
}
}
Run Code Online (Sandbox Code Playgroud)
请求:
var request = WebRequest.Create("http://localhost:42652/Audit");
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
using (var writer = new StreamWriter(request.GetRequestStream()))
{
writer.Write("test=TEST");
}
WebResponse webResponse = request.GetResponse();
Run Code Online (Sandbox Code Playgroud)
我已经尝试了很多变化请求,我觉得有一些简单的我缺少.谢谢你的帮助.
我研究了VB.NET中C#
的default
关键字等价,并遇到了这个问题.
然后我好奇.一些背景 - 我正在解析一个excel电子表格,其中许多列可以为null,并且我0
和整数列之间肯定存在差异null
.
我写了一个小解析方法:
Function Test(ByVal i As String) As Nullable(Of Integer)
Dim j As Integer
If Integer.TryParse(i, j) Then
Return j
Else
Return Nothing
End If
End Function
Run Code Online (Sandbox Code Playgroud)
这似乎工作正常.但是在这里,Integer
如果我想要,我可以回复:
Function Test(ByVal i As String) As Nullable(Of Integer)
Return 2 'or Return Nothing
End Function
Run Code Online (Sandbox Code Playgroud)
我也可以参加C#
:
static void Main(string[] args)
{
int? j = Test("1");
}
public static int? Test(string i)
{
return 2; //or …
Run Code Online (Sandbox Code Playgroud) 我有日期时间对象的列表.我想按月分组并将其添加到字典中.
因此,在分组过程之后,我希望每月和每年都有列表.例如:在分组之前[混合以下元素]
分组后:1)2015年1月 - 5个要素2)2015年2月 - 2个要素2)2014年1月 - 2个要素
我试过这样的:
var test = this.myList.GroupBy(x => x.myDate.Month).ToList();
Run Code Online (Sandbox Code Playgroud)
但我知道我需要使用字典.你有任何想法如何解决它?
我无法绕开承诺.我正在使用Google Earth API对地址进行"浏览".游览只是一个持续大约一分钟的动画,当一个完成时,下一个应该开始.
这是我的游览功能:
var tourAddress = function (address) {
return tourService.getLatLong(address).then(function (coords) {
return tourService.getKmlForCoords(coords).then(function (kml) {
_ge.getTourPlayer().setTour(kml);
_ge.getTourPlayer().play();
var counter = 0;
var d = $q.defer();
var waitForTour = function () {
if (counter < _ge.getTourPlayer().getDuration()) {
++counter;
setTimeout(waitForTour, 1000);
} else {
d.resolve();
}
};
waitForTour();
return d.promise;
});
});
}
Run Code Online (Sandbox Code Playgroud)
这看起来效果很好.它启动动画并返回一个在动画完成时解析的promise.现在我有一个地址数组,我想做一个foreach他们:
$scope.addresses.forEach(function (item) {
tourAddress(item.address).then(function(){
$log.log(item.address + " complete");
});
});
Run Code Online (Sandbox Code Playgroud)
当我这样做时,它们都会同时执行(Google Earth会为最后一个地址执行动画)并且它们都会同时完成.如何在上一个完成之后将它们链接起来?
UPDATE
我用@ phtrivier的帮助来实现它:
$scope.addresses.reduce(function (curr,next) {
return curr.then(function(){
return tourAddress(next.address)
});
}, Promise.resolve()).then(function(){ …
Run Code Online (Sandbox Code Playgroud) 我正在尝试导航黑洞,这是身份成员身份的自定义实现.我现在的目标只是让我的这一行ApiController
正确检索我的UserManager:
public IHttpActionResult Index()
{
var manager = HttpContext.Current.GetOwinContext().GetUserManager<UserManager<MyUser,int>>();
//manager is null
}
Run Code Online (Sandbox Code Playgroud)
这是我的设置.在我Startup
的配置中,我设置了WebApi并添加了我的OwinContext:
app.CreatePerOwinContext<UserManager<MyUser,int>>(Create);
Run Code Online (Sandbox Code Playgroud)
我的创建方法:
public static UserManager<User,int> Create(IdentityFactoryOptions<UserManager<MyUser,int>> options, IOwinContext context)
{
return new UserManager<MyUser,int>(new UserStore(new DbContext()));
}
Run Code Online (Sandbox Code Playgroud)
其余的是我可以做的最基本的实现.
MYUSER:
public class MyUser : IUser<int>
{
public int Id { get; set; }
public string UserName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
MyUserStore:
public class MyUserStore : IUserStore<MyUser,int>
{
private IdentityDbContext context;
public MyUserStore(IdentityDbContext c)
{
context = c;
}
//Create,Delete, etc implementations
}
Run Code Online (Sandbox Code Playgroud)
MyDbContext: …
c# ×5
asp.net-mvc ×2
razor ×2
angularjs ×1
asp.net ×1
dictionary ×1
group-by ×1
grouping ×1
interface ×1
ios ×1
javascript ×1
linq ×1
model ×1
nothing ×1
owin ×1
promise ×1
uipickerview ×1
vb.net ×1
xcode ×1