我需要一个多重继承的解决方案.我知道我可以使用接口.这将是一个很好的解决方案但是......我需要有机会改变保护级别,但界面领域必须公开......
例如:
我有
interface IInterface_1 {
string field_1{set;get;}
string field_2{set;get;}
}
interface IInterface_2 {
string field_3{set;get}
string field_4{set;get}
}
Run Code Online (Sandbox Code Playgroud)
在大班我需要隐藏一些字段
class MainClass : IInterface_1, IInterface_2 {
public string field_1{set;get;}
private string field_2{set;get;}
public string field_3{set;get}
public string field_4{set;get}
}
Run Code Online (Sandbox Code Playgroud)
你对此有什么解决方案吗?
我写了一个UrlHelper,在每个视图中我都需要包含一个using子句:
@using MyWebPage.Helpers
Run Code Online (Sandbox Code Playgroud)
有办法避免吗?如果自动导入,这将是很好的.
我在web.config中添加了这个,如下所示:
<pages>
<namespaces>
<add namespace="System.Web.Helpers" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages" />
<add namespace="MyWebPage.Helpers" />
</namespaces>
</pages>
Run Code Online (Sandbox Code Playgroud)
但它不会解决我的问题.
我想使用验证anotation.我已经有一个由实体框架实现的模型.我需要数据验证,我知道有一个非常好的数据anotation ...但我真的不知道如何使用它与实体框架正确.
我应该编辑实体吗?或者我应该写分开的课程?或者我应该编写从实体继承的类?
你能告诉我应该使用的最佳方式吗?
我想编写尽可能少的代码.
嗨,我尝试使用ToExpando解决方案在剃刀视图中使用匿名类.我使用此解决方案 - > Razor中的动态匿名类型导致RuntimeBinderException
我会写我做的:
我添加了一个文件Extensions.cs,其中我放了以下代码:
public static class Extensions
{
public static ExpandoObject ToExpando(this object anonymousObject)
{
IDictionary<string, object> anonymousDictionary = HtmlHelper.AnonymousObjectToHtmlAttributes(anonymousObject);
IDictionary<string, object> expando = new ExpandoObject();
foreach (var item in anonymousDictionary)
expando.Add(item);
return (ExpandoObject)expando;
}
}
Run Code Online (Sandbox Code Playgroud)我写了一个查询,在控制器方法中从数据库接收元组:
IEnumerable<dynamic> articles = (from p in db.Articles.Where(p => p.user_id == 2)
select new
{
p.article_id,
p.title,
p.date,
p.category,
AverageScore = db.Articles_Scores
.Where(o => o.user_id == p.user_id && p.article_id == o.article_id)
.Average(m => m.score)
}).AsEnumerable()
.Select(r => r.ToExpando());
int ii = …Run Code Online (Sandbox Code Playgroud)可能我的大脑现在不能正常工作......我想知道为什么我在我的代码中收到提到的错误:
int ** zm;
zm = (int**)calloc(1, sizeof(int*));
*zm = (int*)calloc(1, sizeof(int));
*zm[0] = 5;
*zm = (int*)realloc(*zm, 2*sizeof(int));
*zm[1] = 10; // Access violation reading location 0xFFFFFFFFFFFFFFFF
Run Code Online (Sandbox Code Playgroud)
有人可以解释该代码中发生了什么吗?
我正在开展性能至关重要的项目.该应用程序正在处理大量数据.代码是用C++编写的,我需要做一些更改.
给出了以下代码(这不是我的代码,我把它简化为最小):
void process<int PARAM1, int PARAM2>() {
// processing the data
}
void processTheData (int param1, int param2) { // wrapper
if (param1 == 1 && param2 == 1) { // Ugly looking block of if's
process<1, 1>();
else if(param1 == 1 && param2 == 2) {
process<1, 2>();
else if(param1 == 1 && param2 == 3) {
process<1, 3>();
else if(param1 == 1 && param2 == 4) {
process<1, 4>();
else if(param1 == 2 && param2 == 1) …Run Code Online (Sandbox Code Playgroud) 是否可以在猫鼬中进行递归?
例如,我想创建嵌套注释。
让我们考虑以下示例:
commentSchema = new mongoose.Schema({
comment : String,
author : String,
answers : [commentSchema] // ReferenceError: commentSchema is not defined
})
productSchema = new mongoose.Schema({
name : {type: String, required: true},
price : Number,
comments : [commentSchema]
})
Run Code Online (Sandbox Code Playgroud)
在 SQL 中,使用键很容易实现这一点。
首先我想到的是在commentSchema 中添加父字段,它将指向它正在回答的评论,但在这种情况下,如果评论只是数组中的一个简单对象,它们没有生成 id,所以这个解决方案在目前的设计中无法完成。
我想到的第二个解决方案是为评论创建一个单独的表,然后他们将拥有自己的 id,但这是在 mongodb 中进行的好方法吗?我的意思是它开始看起来与 SQL 表设计非常相似。
有没有机会在linq查询中运行c#方法?我需要做那样的事情:
//...
class Match {
public double PrecentageMatching(string s1, string s2) {
//...
return result; // value from 0.0 to 1.0
}
}
//...
string pattern = "nameOfRecord";
var similarRecords = db.Table.Select(
r => Match.PrecentageMatching(r.name, pattern) > 0.5
);
Run Code Online (Sandbox Code Playgroud)
我知道linq不会知道PrecentageMatching方法.但我想知道是否有办法做到这一点?
我正在使用Entity框架.我需要在数据库端没有存储过程和程序集的情况下执行此操作.我没有访问数据库.
我写了一个应该从Windows启动时开始的应用程序.我在HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run中的Windows注册表中添加了一个条目.已成功添加条目,但程序无法正常启动.
我已经在Windows 7 64位上测试了应用程序.应用程序需要具有管理员权限才能运行,也许这就是它无法启动的原因?
我还看到条目的值不在引号中,而是其他的.这是强制性的吗?
这是我的c#代码:
var registry = Registry.CurrentUser;
var key = registry.OpenSubKey(runKeyBase, true);
key.SetValue(KEY, directory + @"\" + filename);
Registry.CurrentUser.Flush();
Run Code Online (Sandbox Code Playgroud)
我怎么能让它工作?
有没有机会在xaml中设置事件处理程序而不使用c#,powershell等?例如,我想在点击后设置另一个控件的文本.下面是我想要做的"伪代码":
<Button Content="Set value = text1" OnClick="txt1.Text = text1" />
<Button Content="Set value = text2" OnClick="txt1.Text = text2" />
<Textbox Name="txt1" />
Run Code Online (Sandbox Code Playgroud) c# ×4
asp.net-mvc ×3
.net ×2
linq ×2
razor ×2
algorithm ×1
autostart ×1
c ×1
c++ ×1
inheritance ×1
interface ×1
memory-leaks ×1
mongoose ×1
node.js ×1
optimization ×1
pointers ×1
protection ×1
realloc ×1
registry ×1
sql ×1
templates ×1
validation ×1
windows-7 ×1
wpf ×1
xaml ×1