我的项目没有错误,我可以通过F5运行它,但我无法查看我的"主"表单,因为[设计]选项卡告诉我,"为了防止在加载设计器之前可能的数据丢失,必须解决以下错误:类名"?"不是此语言的有效标识符."
但是包含该描述的错误列表表明它位于第0行和第0列.
建立| 清洁解决方案没有帮助.
[Design]页面中的Call Stack是:
at Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomParser.CodeTypeDeclarationFromCodeClass(CodeClass vsClass)
at Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomParser.OnNamespacePopulateTypes(Object sender, EventArgs e)
at System.CodeDom.CodeNamespace.get_Types()
at Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomParser.Parse(TextReader codeStream)
at Microsoft.VisualStudio.Design.Serialization.CodeDom.MergedCodeDomParser.System.CodeDom.Compiler.ICodeParser.Parse(TextReader stream)
at System.CodeDom.Compiler.CodeDomProvider.Parse(TextReader codeStream)
at Microsoft.VisualStudio.Shell.Design.Serialization.CodeDom.CodeDomDocDataAdapter.get_CompileUnit()
at Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomDesignerLoader.PerformLoad(IDesignerSerializationManager serializationManager)
at System.ComponentModel.Design.Serialization.BasicDesignerLoader.BeginLoad(IDesignerLoaderHost host)
Run Code Online (Sandbox Code Playgroud)
关闭VS2010并重新启动解决了它.
这里:http://msdn.microsoft.com/query/dev10.query?appId = Dev10IDEF1&l = EN-US&k = k(WHYDTELPAGE)%3bk(TargetFrameworkMoniker-%22.NETFRAMEWORK%2cVERSION%3DdV4.0%22)&rd =真正
我找到了一些建议,包括这个建议(但我不需要尝试它,因为在回来工作之前让VS进入它的房间一两分钟):
"删除包含前一个会话中的设计器布局信息的[solutionname] .suo文件,然后启动项目并重建.."
我正在尝试使用子项目工作的Listview获得最简单的示例.但是这段代码:
private void button1_Click(object sender, EventArgs e) {
listView1.Groups.Add(new ListViewGroup("Kannst du mich sehen?", HorizontalAlignment.Left));
string[] strArr = new string[4] { "uno", "dos", "twa", "quad" };
for (int i = 0; i < strArr.Length; i++)
{
ListViewItem lvi = new ListViewItem(strArr[i]);
listView1.Items.Add(lvi);
lvi.SubItems.Add("Ciao, Baby!");
listView1.Items[i].Group = listView1.Groups[0];
}
}
Run Code Online (Sandbox Code Playgroud)
...不显示子项("Ciao,Baby!").表明:
Kannst du mich sehen?
---------------------
uno dos twa quad
Run Code Online (Sandbox Code Playgroud)
......但我希望它是:
Kannst du mich sehen?
---------------------
uno Ciao, Baby!
dos Ciao, Baby!
twa Ciao, Baby!
quad Ciao, Baby!
Run Code Online (Sandbox Code Playgroud)
更奇怪的是(在我看来),我明白了:
Default
-------
uno …Run Code Online (Sandbox Code Playgroud) 使用以下代码:
if (lombardiTrophy.Substring(1, 1).Equals('~'))
Run Code Online (Sandbox Code Playgroud)
......我明白了," 可疑的比较:解决方案中没有从'string'和'char'继承的类型 "
有没有更好的方法来做到这一点,不会导致Resharper提出其骚扰?
在下面的注释掉的行中,PlatypusId是红色/无法识别的,尽管它确实存在于相应的表中.
在queryResult的多行跨越赋值中,PlatypusId,where和count是红色/无法识别的.
//var queryResult = await conn.Table<PlatypiRequested>().CountAsync().(x => x.PlatypusId.Equals(personId));
var queryResult = from p in PlatypiRequested
where p.PlatypusId.Equals(platypusId)
select count;
Run Code Online (Sandbox Code Playgroud)
IOW,当我添加这个:
var conn = new SQLiteAsyncConnection(SQLitePath);
var queryResult = await conn.Table<PlatypiRequested>().CountAsync().(x => x.
Run Code Online (Sandbox Code Playgroud)
......在"x => x"之后没有任何可能性被提供.
查询我的SQLite表需要什么样的代码?
我正在使用SQLite-net包/扩展,但它的文档(什么文档?)并不过分冗长.通过查看SQLite.cs和SQLiteAsync.cs,我不是更明智的......
好吧,Harvey先生的回答评论让我看到了这个工作代码(Count()不可用,只有CountAsync()):
public async Task<bool> PlatypusAlreadyAdded(string platypusId)
{
var conn = new SQLiteAsyncConnection(SQLitePath);
var queryResult = await conn.Table<PlatypiRequested>().Where(x => x.PlatypusId == platypusId).CountAsync();
return queryResult > 0;
}
Run Code Online (Sandbox Code Playgroud)
正如Jackie DeShannon(与我无关,AFAIK)演唱的那样,"现在世界需要的是一个"SQLite/SQLite-net for C#Windows Store应用程序"的书(或者至少是一篇冗长/内容丰富的博文,包含所有的例子)常见的SQL语句类型(CRUD)).
Resharper希望我改变这段代码:
foreach (var item in cmbxColor1.Items)
{
cmbxColor2.Items.Add(item);
. . .
Run Code Online (Sandbox Code Playgroud)
...因为它说,"可能'System.NullReferencesException'"
所以它应该是这样的:
foreach (var item in cmbxColor1.Items)
{
if (null != cmbxColor2.Items)
{
cmbxColor2.Items.Add(item);
. . .
Run Code Online (Sandbox Code Playgroud)
?
我不明白 - 除非null ==空,组合框的项目怎么可能为null?如果null ==为空,那么这就是他们[s,w]调用此代码时应该是什么.
Resharper告诉我"需要后备颜色"并添加(当我默认时),这里的第一种颜色:
color: #ff8000;
color: hsl(30, 100%, 50%);
Run Code Online (Sandbox Code Playgroud)
显然,这首先将#ff8000分配给该类,然后如果hsl值"取"它将覆盖先前的赋值.但为什么这有必要呢?当使用所有类型的颜色分配时,当然不需要"后备颜色"?
遗留应用程序在启动时处于无限循环中; 我不知道为什么/如何(代码混淆竞赛候选人),但关于被反复调用的方法(从其他几种方法调用),我想,"我想知道是否有一种调用此方法的方法还在调用另一个也叫它的方法?"
我想:"不,编译器能够解决这个问题,而不是允许它,或者至少发出警告!"
所以我创建了一个简单的应用来证明这种情况:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
method1();
}
private void button2_Click(object sender, EventArgs e)
{
method2();
}
private void method1()
{
MessageBox.Show("method1 called, which will now call method2");
method2();
}
private void method2()
{
MessageBox.Show("method2 called, which will now call method1");
// Note to self: Write an article entitled, "Copy-and-Paste Considered Harmful"
method1();
}
}
Run Code Online (Sandbox Code Playgroud)
...但不是!它编译得很好.为什么编译器不会将此代码标记为最可疑?如果任何一个按钮被捣碎,你就永远不会降落!
好的,有时您可能需要无限循环(起搏器代码等),但我认为应该发出警告.
当我添加HTML5时间输入元素时,它显示我:
__:__:__
Run Code Online (Sandbox Code Playgroud)
它似乎是24小时(军事/欧洲)小时模式.如何让它附加一个"上午/下午"指示符(并且,正如我在先前的问题中提到的,我也不需要/想要秒部分)?
使用此代码:
bool dataToAdd;
if (null == _priceComplianceDetailList) return dataToAdd;
Run Code Online (Sandbox Code Playgroud)
我收到编译错误," 使用未分配的局部变量'dataToAdd' "
所以我不得不明确地给布尔分配"假":
bool dataToAdd = false;
if (null == _priceComplianceDetailList) return dataToAdd;
Run Code Online (Sandbox Code Playgroud)
在上下文中:
private bool PopulateSheetWithDetailData()
{
bool dataToAdd = false;
if (null == _priceComplianceDetailList) return dataToAdd;
List<PriceComplianceDetail> _sortedDetailList =
. . .
return _sortedDetailList.Count > 0;
}
Run Code Online (Sandbox Code Playgroud)
为什么有必要?bool的默认值是否为false?
我有这个代码试图打开一个.json文件并阅读它:
[Route("{unit}/{begindate}")]
public string Get(string unit, string begindate)
{
string _unit = unit;
string _begindate = String.Format("{0}01", PlatypusWebReportsConstsAndUtils.HyphenizeYYYYMM(begindate));
string appDataFolder = HttpContext.Current.Server.MapPath("~/App_Data/");
// semi-hardcoded file name for now
string jsonFilename = string.Format("PoisonToe_{0}_{1}.json", _unit, _begindate);
string fullPath = Path.Combine(appDataFolder, jsonFilename);
JObject platypusComplianceJson = JObject.Parse(File.ReadAllText(fullPath));
. . .
Run Code Online (Sandbox Code Playgroud)
在最后一行,我得到:
Newtonsoft.Json.JsonReaderException未被用户代码处理HResult = -2146233088 Message =从JsonReader读取JObject时出错.当前的JsonReader项不是对象:
根据我在这里读到的内容,我认为这是实现它的方法.我究竟做错了什么?