小编ivc*_*ubr的帖子

自创建数据库以来,支持'ApplicationDbContext'上下文的模型已更改

首先,我没有在其他地方看到过这个错误,我猜它不是复制品,所以请先阅读整个情况.

一切都工作得很好,然后我尝试更新我的一个模型类(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.UserStore 6.GetUserAggregateAsync(Expression上的Microsoft.AspNet.Identity.EntityFramework.UserStore 6.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)

.net linq asp.net-mvc entity-framework asp.net-mvc-5

84
推荐指数
7
解决办法
11万
查看次数

调用Dispose()vs对象超出范围/方法完成

我有一个方法,里面有一个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声明,但有些情况令我感到困惑.

c# idisposable using using-statement

14
推荐指数
2
解决办法
1万
查看次数

将光标定位在Word文档的开头/结尾

我们使用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方法,DocumentWdGoToItem它提供的选项都没有用.

是不是有一种简单的方法可以将光标发送到文档的结尾(或开头)?

编辑

我的部分问题是我不喜欢选择最后一个字段.现在已经意识到我能做到

f.Unlink
Run Code Online (Sandbox Code Playgroud)

删除mergefield,只是将字段文本保留为纯文本.哪个更整洁,我们是否也重新定位光标

.net interop ms-word mergefield

10
推荐指数
2
解决办法
3万
查看次数

.Net Core HttpClientFactory 配置 HttpClientHandler

我目前正在以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不让处理程序处理?

.net .net-core asp.net-core

6
推荐指数
1
解决办法
2642
查看次数

在 C# 中更改 Excel Power Query 连接字符串

在 Excel Power Query 文件中,数据连接可以来自 SQL 服务器。我们有大量按名称指定 SQL 服务器的文件,并且该服务器将退役。我们需要更新连接以用新的服务器名称替换旧的服务器名称。这可以通过打开 Excel 文件、浏览查询并手动编辑服务器名称来实现。由于有大量文件,因此需要使用 C# 执行此操作。下图显示了您可以手动更新的输入字段(已删除名称)。

SQL 连接表单

首先通过解压缩 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=&quot;table&quot;" 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 …

c# excel powerquery

5
推荐指数
1
解决办法
1802
查看次数

异步更新文本框

我正在创建一个电子邮件软件,向某些帐户发送电子邮件.我想在每次发送或发送新电子邮件时附加文本.但是文本框在发送所有电子邮件后显示我的报告.如果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)

.net c#

2
推荐指数
1
解决办法
4076
查看次数

串口未收到任何数据

我正在尝试编写一个简单的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控制台应用程序

c# serial-port arduino

0
推荐指数
2
解决办法
6364
查看次数