use*_*415 1 c# int entity-framework void
好的,所以我对编程还很陌生,我不明白为什么会出现此错误。
我的方法应该存储它在这个方法中所做的邮件:
public void StoreMail(PhishingMail PhishingMail)
{
using (var phishingMailStorage = new PhishFinderModel())
{
phishingMailStorage.PhishingMail.Attach(PhishingMail);
phishingMailStorage.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
然后在我的 processPhishingMail 方法中,它调用 Store 方法。但是后来我收到错误:无法将类型“void”隐式转换为“int”。
public void ProcessPhishingMail(PhishingMail phishingMail)
{
Hashtable phishingUrls;
int phishingMailId;
int phishingUrlId;
//Error convertion
phishingMailId = _storageAgent.StoreMail(phishingMail);
Run Code Online (Sandbox Code Playgroud)
所以我真的找不到从void转换为int的解决方案。也许这是不可能的?
我的问题是:如何在我的代码中转换这些类型?
请不要苛刻我真的很陌生。感觉就像我在信息的海洋中游泳,我不知道从哪里看或从哪里开始。因此,非常欢迎任何建议的教程。
在创建方法时,您定义了返回类型。void 意味着它不会返回任何东西。您已将方法定义为public void StoreMail(),因此表示它不会返回任何内容。当您调用该方法时,您要求返回phishingMailId = _storageAgent.StoreMail(phishingMail)。但是因为您将该方法定义为 void 并且您没有让该方法返回任何内容,所以您无法获取 id 并出现错误。
要解决此问题,您必须使您的方法返回一个 int
public int StoreMail(PhishingMail phishingMail){}
Run Code Online (Sandbox Code Playgroud)
然后在方法中进一步定义要返回的内容
return newId;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15721 次 |
| 最近记录: |