一切都工作得很好,然后我尝试更新我的一个模型类(App类和更新现在留下评论),我将在下面列出并繁荣我有这个丑陋的错误.
自创建数据库以来,支持'ApplicationDbContext'上下文的模型已更改.请考虑使用"代码优先迁移"来更新数据库(http://go.microsoft.com/fwlink/?LinkId=238269).在System.Data.Entity.CreateDatabaseIfNotExists
1.InitializeDatabase(TContext context) at System.Data.Entity.Internal.InternalContext.<>c__DisplayClassf1.b__e()处于System.Data.Entity.InternalContext.PerformInitialization()的System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Action action)中的System.Data.Entity.位于System.Data.Entity.Internal的文档1.PerformAction(TInput input) at System.Data.Entity.Internal.LazyInternalContext.InitializeDatabaseAction(Action中的System.Data.Entity.Entity.Internal.OitityDatabase()的System.Data.EntityContext.b__4(InternalContext c)中的Internal.LazyInternalContext.b__4(InternalContext c).InternalContext.GetEntitySetAndBaseTypeForType(Type) System.Data.Entity.Internal.Linq.InternalSet中的1.Initialize() at System.Data.Entity.Internal.Linq.InternalSet1.Include(String path)1.Include(String path) at System.Data.Entity.QueryableExtensions.Include[T](IQueryableSystem.Data.Entity.QueryableExtensions.Include [T,System.Data.Entity.Infrastructure.DbQuery 1 source,String path)inInclude(String path)1 source, Expression在Microsoft.AspNet.Identity.UntityFramework.UserStore6.GetUserAggregateAsync(Expression上的Microsoft.AspNet.Identity.EntityFramework.UserStore6.FindByNameAsync(String userName) at Microsoft.AspNet.Identity.UserManager2.FindByNameAsync(String userName)的Microsoft.AspNet.Identity.UserManager`2.d__12上的TProperty](IQueryable 1路径). MoveNext()---来自先前locati的堆栈跟踪结束 在抛出异常的位置---在ControlPanel.Web.Controllers.AccountController.d__2.MoveNext()的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)的System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务)上在d:\ Projects\FULL\Control Panel\ControlPanel.Web\Controllers\AccountController.cs:第56行
起初我认为这可能是一个迁移问题,因此我完全删除了数据库,重新启用了迁移,并添加了Init迁移并使用了更新数据库
update-database -force -verbose
Run Code Online (Sandbox Code Playgroud)
每件事都没有投诉,但每当我尝试登录我的网站时,我都会收到上一个错误.我做了大约十次移植的事情而没能解决问题.
这是我的域类(模型):
public class App
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public virtual int AppId { get; set; }
//[Required]
public virtual string …Run Code Online (Sandbox Code Playgroud) 我有一个方法,里面有一个try/catch/finaly块.在try块中,我声明SqlDataReader如下:
SqlDataReader aReader = null;
aReader = aCommand.ExecuteReader();
Run Code Online (Sandbox Code Playgroud)
在finally块中,手动处理的对象是在类级别设置的对象.因此,在该方法的对象,其实现IDisposable,如SqlDataReader上述,他们得到自动处理的?Close()在aReader执行while循环后调用,以获取阅读器的内容(应该是Dispose()调用的内容Close()).如果没有调用Close(),当方法完成或对象超出范围时,是否会自动关闭/处置此对象?
编辑:我知道这个using声明,但有些情况令我感到困惑.
我们使用Word Interop从.Net操作Word 2007文档.主要用以下字段做事:
For Each f In d.Fields
f.Select()
//do stuff with fields here
Next
Run Code Online (Sandbox Code Playgroud)
这将选择文档中的最后一个字段.
因此,为了整洁,我们希望将光标定位在文档的末尾(甚至开始就可以).
谷歌搜索答案并没有太多...我最近得到的似乎是建议我们需要让自己参与范围或书签.有一个对象的GoTo方法,Document但WdGoToItem它提供的选项都没有用.
是不是有一种简单的方法可以将光标发送到文档的结尾(或开头)?
编辑
我的部分问题是我不喜欢选择最后一个字段.现在已经意识到我能做到
f.Unlink
Run Code Online (Sandbox Code Playgroud)
删除mergefield,只是将字段文本保留为纯文本.哪个更整洁,我们是否也重新定位光标
我目前正在以httpclientfactory这种方式配置我的
HttpClientHandler httpClientHandler = new HttpClientHandler()
{
ServerCertificateCustomValidationCallback = (message, cert, chain, errors) => { return true; }
};
serviceCollection.AddHttpClient("ignoreSSL", c =>
{}).ConfigurePrimaryHttpMessageHandler(h => httpClientHandler);
Run Code Online (Sandbox Code Playgroud)
要禁用安全证书的验证,但在执行太多请求时,我收到此异常:
无法访问已处置的对象。对象名称:'SocketsHttpHandler'。
我目前以httpclient这种方式构建我的
HttpClient client = _httpClientFactory.CreateClient("ignoreSSL");
Run Code Online (Sandbox Code Playgroud)
做测试,这样就解决了,不用 httpclientfactory
HttpClient ad = new HttpClient(handler, false);
Run Code Online (Sandbox Code Playgroud)
对于多我找我找不到如何告诉httpclientfactory不让处理程序处理?
在 Excel Power Query 文件中,数据连接可以来自 SQL 服务器。我们有大量按名称指定 SQL 服务器的文件,并且该服务器将退役。我们需要更新连接以用新的服务器名称替换旧的服务器名称。这可以通过打开 Excel 文件、浏览查询并手动编辑服务器名称来实现。由于有大量文件,因此需要使用 C# 执行此操作。下图显示了您可以手动更新的输入字段(已删除名称)。
首先通过解压缩 Excel 文件并浏览文件夹下的内容,xl > connections.xml我原以为它会在那里指定连接,但它只说$Workbook$
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<connections xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
<connection id="1" keepAlive="1" name="Query" description="Connection to the query in the workbook." type="5" refreshedVersion="6" background="1" saveData="1">
<dbPr connection="Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location="table"" command="SELECT * FROM [table]"/>
</connection>
</connections>
Run Code Online (Sandbox Code Playgroud)
在MDSN 表格上有对这个主题的引用,Will Gregg 提供的答案说:
外部数据源连接信息存储在自定义部件中的 XLSX 包中。您可以在包的 customXML 文件夹下找到自定义部件。例如:customXml\iem1.xml。
item1.xml 中包含一个元素。元素的定义可以在 [MS-QDEFF]:查询定义文件格式文档 ( https://msdn.microsoft.com/en-us/library/mt577220(v=office.12).aspx ) 中找到。
为了处理元素的数据,您需要按照 [MS-QDEFF]:查询定义文件格式文档中的描述对内容进行解码。
一旦数据被解码,您将需要检查 PackagePart 的内容。在该包中,您将在 Forumlas\Section1.m 部分中找到外部数据连接信息。
这有助于将我指向item.xml文件customXml …
我正在创建一个电子邮件软件,向某些帐户发送电子邮件.我想在每次发送或发送新电子邮件时附加文本.但是文本框在发送所有电子邮件后显示我的报告.如果toList非常大,如30+个电子邮件,则应用程序屏幕变为白色,并且在发送所有电子邮件后,GUI将返回更新的OutPutTextBox.这是SendButton_Click方法中的代码
foreach (String to in toList)
{
bool hasSent = SendMail(from, "password", to, SubjectTextBox.Text, BodyTextBox.Text);
if (hasSent)
{
OutPutTextBox.appendText("Sent to: " + to);
}
else
{
OutPutTextBox.appendText("Failed to: " + to);
}
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个简单的c#控制台应用程序,以从与已连接的Arduino通信的串行端口进行读取/写入。我遇到的问题是我可以写Arduino没问题,但是我无法接收任何数据。我的串行端口SerialDataReceivedEventHandler也从未被解雇过,但是我猜这两个问题是相关的。
我知道不是我的Arduino引起了这个问题,因为使用Arduino IDE时我可以毫无问题地接收数据。这是我现在明智的代码:
SerialPort sPort = new SerialPort();
sPort.PortName = SerialPort.GetPortNames()[0];
sPort.BaudRate = 9600;
sPort.Parity = Parity.None;
sPort.DataBits = 8;
sPort.StopBits = StopBits.One;
sPort.RtsEnable = false;
sPort.Handshake = Handshake.None;
sPort.DataReceived += new SerialDataReceivedEventHandler(sPort_dataReceived);
sPort.ErrorReceived += new SerialErrorReceivedEventHandler(sPort_ErrorReceived);
sPort.Open();
Console.Read();
sPort.Write("tt_calib");
while (true)
{
if (sPort.ReadExisting() != string.Empty)
Console.WriteLine(sPort.ReadExisting());
}
Run Code Online (Sandbox Code Playgroud)
我知道我没有在此代码中关闭端口,这不是问题,因为我每次都可以重新运行并打开它。这段代码也不是最终形式,我试图使read事件正常工作,以便对各种消息做出不同的反应。我已经阅读了每个问题,但没有找到解决方案。
这是在Windows 8.1上运行的C#.NET 4.5控制台应用程序
.net ×4
c# ×4
.net-core ×1
arduino ×1
asp.net-core ×1
asp.net-mvc ×1
excel ×1
idisposable ×1
interop ×1
linq ×1
mergefield ×1
ms-word ×1
powerquery ×1
serial-port ×1
using ×1