我用这段代码用国家列表填充我的下拉列表:
public JsonResult GetAllCountries()
{
var objDict = new Dictionary<string, string>();
foreach (var cultureInfo in CultureInfo.GetCultures(CultureTypes.SpecificCultures))
{
var regionInfo = new RegionInfo(cultureInfo.Name);
if (!objDict.ContainsKey(regionInfo.EnglishName))
{
objDict.Add(cultureInfo.EnglishName, regionInfo.TwoLetterISORegionName.ToLower());
}
}
var obj = objDict.OrderBy(p => p.Key).ToArray();
return Json(obj.Select(t => new
{
Text = t.Key,
Value = t.Value
}), JsonRequestBehavior.AllowGet);
}
Run Code Online (Sandbox Code Playgroud)
var result = from payroll in currentMonthPayroll
select new SalaryDifference
{
PreviousMonthSalary = previousMonthPayroll.Where(t => t.EmployeeId == payroll.EmployeeId).FirstOrDefault() == null ?
default(decimal) : previousMonthPayroll.Where(t => t.EmployeeId == payroll.EmployeeId).FirstOrDefault().Salary,
};
Run Code Online (Sandbox Code Playgroud)
有没有办法不重复previousMonthPayroll.Where(t => t.EmployeeId == payroll.EmployeeId).FirstOrDefault()选择Salary值的逻辑?
我试过:
previousMonthPayroll.Where(t => t.EmployeeId == payroll.EmployeeId)
.FirstOrDefault().Salary ?? default(decimal);
Run Code Online (Sandbox Code Playgroud)
但是,如果previousMonthPayroll.Where(t => t.EmployeeId == payroll.EmployeeId).FirstOrDefault()为 null,则会抛出异常。
我正在使用Entity Framework 6和针对Oracle数据库的MVC5 webapi2项目.
我试图在Seed方法中添加一些ApplicationRoles,但是当我执行update-database时,我得到以下异常:
运行种子方法.System.Runtime.Serialization.SerializationException:类型未解决的成员 'Oracle.ManagedDataAccess.Client.OracleException,Oracle.ManagedDataAccess,版本= 4.121.2.0,文化=中性公钥= 89b483f429c47342'.在System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate)在System.Data.Entity.Migrations.Design.ToolingFacade.Run(跑垒员浇道)在System.Data.Entity.Migrations.Design.ToolingFacade.Update(字符串targetMigration,布尔力)在System.Data.Entity.Migrations.UpdateDatabaseCommand.<> c__DisplayClass2.<构造函数> b__0()在System.Data.Entity.Migrations.MigrationsDomainCommand.Execute(动作命令)类型没有解决为成员"Oracle.ManagedDataAccess.Client. OracleException,Oracle.ManagedDataAccess,Version = 4.121.2.0,
我在Seed方法中的代码:
var roleStore = new RoleStore<IdentityRole>(context);
var roleManager = new RoleManager<IdentityRole>(roleStore);
if (!context.Roles.Any(r => r.Name == "USER"))
{
var role = new IdentityRole("USER");
roleManager.Create(role);
}
Run Code Online (Sandbox Code Playgroud)
update-database 正在创建我的表没有任何问题,它只是种子方法有问题.
有没有人对这个问题有什么建议?
谢谢.
我正在用C#做一些自学,虽然我做了比这更复杂的项目,但我无法弄清楚问题是什么.
private void button4_Click(object sender, EventArgs e)
{
int headcount = 0;
int input = Global.inputcount;
for (int i = 0; i < Global.inputcount; i++)
{
if (Global.myTextFile[i] == "F")
{
headcount++;
}
}
float result;
result = headcount/input; <<< that line
button4.Text = result.ToString();
}
Run Code Online (Sandbox Code Playgroud)
这是我的代码,它应该算多少次F的在occour myTextFile阵列,它应该除以数量与输入数量.
我调试了很多次,一切都很好,直到[那]行.尽管(人数= ~2201)和(输入= ~4321),结果为0.
我曾经和pascal一起工作,我已经用了2个月的C#所以如果有人能帮助我,我会很感激.
F 代表匈牙利语中的"Fej"="Head"
我看到了一些abstract基类.NET提供,我完全迷失了它们的构造函数和虚方法定义的方式.例如,请参阅System.ComponentModel.DataAnnotations.ValidationAttribute基类:
public abstract class ValidationAttribute : Attribute
{
// Summary:
// Initializes a new instance of the System.ComponentModel.DataAnnotations.ValidationAttribute
// class.
protected ValidationAttribute();
...
protected virtual ValidationResult IsValid(object value, ValidationContext validationContext);
}
Run Code Online (Sandbox Code Playgroud)
但我不能在自己的课堂上这样做:
public abstract class MyClass
{
protected MyClass();
}
Run Code Online (Sandbox Code Playgroud)
MyClass.MyClass()必须声明一个body,因为它没有标记为abstract,extern或partial
我也无法标记它abstract:
修饰符摘要对此项无效
我没有特别需要MyClass像ValidationAttribute或其他基类.NET.我只想知道他们是如何在运行时编译的.
关于我在C#中工作的程序,我只是一个快速(我认为)的问题.我有一个包含很长数字列表的文本文件,如下所示:
41.673993158 0.000000000 258.436256
41.673992499 -0.000001364 258.462068
41.673991841 -0.000002700 258.487880
Run Code Online (Sandbox Code Playgroud)
我需要创建一个数组,将每个数字分别包含为double(或float).即
Array[0] = 41.673993158
Array[1] = 0.000000000 ...etc.]
Run Code Online (Sandbox Code Playgroud)
现在,我在数组中有数字,但它们都是字符串.我有以下代码:
string text = System.IO.File.ReadAllText("/Applications/Unity/Projects/Underwater/SampleFile.txt");
if (text != null)
{
string[] strings = text.Split (' ');
System.Console.WriteLine("Contents of SampleFile = ");
for (int i = 0; i < strings.Length; i++)
{
Console.WriteLine (strings[i]);
}
}
Run Code Online (Sandbox Code Playgroud)
这段代码非常完美.它在控制台中的一个单独的行上输出每个数字,这使我相信每个数字在数组中都有它自己的位置.但是,它们仍然是字符串,所以当我尝试使用此代码将它们转换为双精度时:
double[] nums = new double[strings.Length];
for (int i = 0; i < strings.Length; i++)
{
nums[i] = Convert.ToDouble(strings[i]);
}
Run Code Online (Sandbox Code Playgroud)
我被抛出异常错误,无法弄清楚原因.这是错误消息:
抛出了System.FormatException.
未知的字符
详细信息:double.Parse(s ="258.436256\r \n \n41.673992499",provider …