struct Point
{
public int x;
public int y;
}
void Main()
{
Point p;
p.x = 1;
p.y = 1;
Object o = p;
((Point) o).x = 4; // error
((Point) o).x = 5; // error
((Point) o).x = 6; // error
p = (Point) o // expect 6
}
Run Code Online (Sandbox Code Playgroud)
为什么不编译
ldloc.1 // o
unbox Point
ldc.i4.4
stfld Point.x
Run Code Online (Sandbox Code Playgroud)
C++ CLI允许的地方.
我正在尝试在asp.net中使用C#注册用户,然后将他们的详细信息放入我的数据库中.一切似乎工作正常,但细节不会进入数据库.这是我到目前为止所拥有的:
protected void CreateUser_Click(object sender, EventArgs e)
{
var manager = Context.GetOwinContext().GetUserManager<ApplicationUserManager>();
var signInManager = Context.GetOwinContext().Get<ApplicationSignInManager>();
var user = new ApplicationUser() { UserName = Email.Text, Email = Email.Text };
IdentityResult result = manager.Create(user, Password.Text);
if (result.Succeeded)
{
signInManager.SignIn( user, isPersistent: false, rememberBrowser: false);
IdentityHelper.RedirectToReturnUrl(Request.QueryString["ReturnUrl"], Response);
manager.AddToRole(user.Id, "users");
string connectionString = WebConfigurationManager.ConnectionStrings["MyDatabaseConnection"].ConnectionString;
SqlConnection con = new SqlConnection(connectionString);
string sql;
sql = "INSERT INTO users (username, title, gname, sname, dob, address, suburb, state, postcode, phone, email) VALUES (@UserName, @Title1, @FirstName, @FamilyName, @DateOfBirth, …
Run Code Online (Sandbox Code Playgroud) 在我写一个股市交易员的过程中,IObserver
我遇到了三个错误,这些错误主要来自Reactive Extensions
图书馆内部.
我有以下CompanyInfo
课程:
public class CompanyInfo
{
public string Name { get; set; }
public double Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
还有一个IObservable<CompanyInfo>
叫StockMarket
:
public class StockMarket : IObservable<CompanyInfo>
Run Code Online (Sandbox Code Playgroud)
我Observer
看起来如下:
public class StockTrader : IObserver<CompanyInfo>
{
public void OnCompleted()
{
Console.WriteLine("Market Closed");
}
public void OnError(Exception error)
{
Console.WriteLine(error);
}
public void OnNext(CompanyInfo value)
{
WriteStock(value);
}
private void WriteStock(CompanyInfo value) { ... }
}
Run Code Online (Sandbox Code Playgroud)
我运行以下代码:
StockMarket market = …
Run Code Online (Sandbox Code Playgroud) 我可以改变我的循环
for (int i = 0; i < something; i++)
Run Code Online (Sandbox Code Playgroud)
至:
Parallel.For(0, something, i =>
Run Code Online (Sandbox Code Playgroud)
但是如何用这个循环做到这一点?:
for (i = 3; i <= something / 2; i = i + 2)
Run Code Online (Sandbox Code Playgroud)
谢谢你的回答.
我需要按月和按年分组多个属性 C#
LINQ
这是我的代码:
public class Class1
{
public Nullable<DateTime> dt1 { get; set; }
public Nullable<DateTime> dt2 { get; set; }
}
Class1 obj1 = new Class1 { dt1 = new DateTime(2012, 11, 12),
dt2 = new DateTime(2012, 12, 12) };
Class1 obj2 = new Class1 { dt1 = new DateTime(2012, 11, 12),
dt2 = new DateTime(2012, 12, 12) };
Class1 obj3 = new Class1 { dt1 = null, dt2 = new DateTime(2012, 10, 12) };
Class1 obj4 = …
Run Code Online (Sandbox Code Playgroud) 我正在与一个奇怪的行为OrderBy()
的方法Lists
.
想象一下,你有一个List,每个人都拥有Firstname
,Lastname
和Gender
.如果此列表中的所有人都是Gender
"m"
,那么每次调用后我都会得到不同的排序
list.OrderBy(p => p.Gender)
Run Code Online (Sandbox Code Playgroud)
但我不希望我的列表在每次刷新时跳转.有什么想法吗?
我正在尝试创建一个lambda表达式(使用Reflection),看起来像这样
IServiceProvider provider => provider.GetService<TDbContext>()
Run Code Online (Sandbox Code Playgroud)
或者,更具体地说,作为GetService
一种扩展方法:
provider => ServiceProviderServiceExtensions.GetService<TDbContext>(provider)
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
var methodInfo = typeof(ServiceProviderServiceExtensions).
GetTypeInfo().
GetMethod("GetService").
MakeGenericMethod(typeof(TDbContext));
var lambdaExpression = Expression.Lambda(
Expression.Call(methodInfo, Expression.Parameter(typeof(IServiceProvider), "provider")),
Expression.Parameter(typeof(IServiceProvider), "provider")
);
var compiledLambdaExpression = lambdaExpression.Compile();
Run Code Online (Sandbox Code Playgroud)
我收到了这个错误
System.Linq.Expressions.dll中出现"System.InvalidOperationException"类型的异常,但未在用户代码中处理
附加信息:从范围''引用的'System.IServiceProvider'类型的变量'provider',但它没有定义
我有以下代码:
WebClient c = new WebClient();
var data = c.DownloadString("https://btc-e.com/api/2/btc_usd/ticker");
//Console.WriteLine(data);
JObject o = JObject.Parse(data);
maskedTextBox11.Text = o["high"];
Run Code Online (Sandbox Code Playgroud)
但它在标题中给出了错误.
我有一个Parent
包含Child
对象集合的类,其中Child
有两个属性:Key
和Value
:
class Parent
{
public IEnumerable<Child> Children { get; set; }
}
class Child
{
public String Key { get; set; }
public String Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我需要List<Parent>
按其分组 a Child.Value
。
例子:
IEnumerable<Parent> parents = new List<Parent>()
{
new Parent()
{
Children = new List<Child>()
{
new Child() { Key = "key1", Value = "v1" },
new Child() { Key = "key1", Value = "v2" …
Run Code Online (Sandbox Code Playgroud)