Tag: asp.net

在ASP.NET中异步发送电子邮件的正确方法…(我做得对吗?)

当用户在我的网站上注册时,我不明白为什么我需要让他“等待”smtp通过才能获得激活电子邮件。 我决定异步启动这段代码,这是一次冒险。 让我们想象一下我有一个方法,例如: private void SendTheMail() { // Stuff } 我的第一个虽然是线程。 我这样做了: Emailer mailer = new Emailer(); Thread emailThread = new Thread(() => mailer.SendTheMail()); emailThread.Start(); 这工作……直到我决定测试它的error handling能力。 我故意破坏了我的web.config中的SMTP服务器地址并尝试了它。 可怕的结果是IIS基本上BARFED与w3wp.exe上的未处理exception错误(这是一个Windows错误!多么极端……)ELMAH(我的错误记录器)没有捕获它并且IIS重新启动所以网站上的任何人都有他们的会话被删除了。 完全不可接受的结果! 我的下一个想法是,对异步代表进行一些研究。 这看起来效果更好,因为在异步委托中处理exception(与上面的线程示例不同)。 但是,我担心的是我做错了还是我可能导致内存泄漏。 这就是我正在做的事情: Emailer mailer = new Emailer(); AsyncMethodCaller caller = new AsyncMethodCaller(mailer.SendMailInSeperateThread); caller.BeginInvoke(message, email.EmailId, null, null); // Never EndInvoke… 我这样做了吗?

登录系统的IPAddress

使用波纹管代码。 protected string GetUserIP() { string strUserIP = string.Empty; if (HttpContext.Current.Request.ServerVariables[“HTTP_X_FORWARDED_FOR”] != null) { strUserIP = HttpContext.Current.Request.ServerVariables[“HTTP_X_FORWARDED_FOR”].ToString(); } else if (HttpContext.Current.Request.UserHostAddress.Length != 0) { strUserIP = HttpContext.Current.Request.UserHostAddress; } return strUserIP; } 我得到格式::1的IPaddress。 如何获取系统的正确IP地址。

包含System.IO.Compression 时,当前上下文中不存在名称“ZipFile”

我目前正在运行.net 4.5版,我正在尝试使用它的“新”zip函数。我包括System.IO.Compression ,我正在尝试运行以下代码: using System.IO.Compression; string startPath = @”c:\example\start”; string zipPath = @”c:\example\result.zip”; string extractPath = @”c:\example\extract”; ZipFile.CreateFromDirectory(startPath, zipPath); ZipFile.ExtractToDirectory(zipPath, extractPath); 我得到的问题是The name ‘ZipFile does not exist in the current context 。 如果我已经在使用需要它的东西,我不知道它为什么不存在。

如何忽略默认的EntityData属性?

我正在使用Entity Framework创建MVC mobile application service 我创建了一个Entity Model如下所示: public class Regions : EntityData { public string Id { get; set; } public string Name { get; set; } } 我已经创建了一个TableController所以我通过发出一个get请求来查询: http://localhost:3000/tables/Regions 这会返回错误说: “exceptionMessage”:“无效的列名’Id’。\ r \ n无效的列名>’版本’。\ r \ n无效的列名’CreatedAt’。\ r \ n无效的列名’UpdatedAt’。”, 查看EntityData类,我可以看到这些是EntityData类的属性: public abstract class EntityData : ITableData { protected EntityData(); [DatabaseGenerated(DatabaseGeneratedOption.Identity)] [Index(IsClustered = true)] […]

无法通过WCF中的构造函数初始化成员

我有一个CibilResponse类,它具有类类型的属性(TUEF类)。 我试图使用: CibilEnquiryEnq.Tuef.Version = “12”;分配值CibilEnquiryEnq.Tuef.Version = “12”; 但它抛出空引用错误。 我已经解决了这个错误,但是通过创建一个像这样的对象: CibilEnquiryEnq.Tuef = new CibilWcfService.TUEF(); 而不是通过构造函数。 ICIBIL.cs [ServiceContract] public interface ICIBIL { [OperationContract] string InsertCibil(CibilResponse cibilResponse); [OperationContract] string TestInsert(string testObj); [OperationContract] string GenerateEnquiry(CibilEnquiry testObj); } [DataContract] public class CibilEnquiry { [DataMember] public TUEF Tuef { get; set; } public CibilEnquiry() { this.Tuef = new TUEF(); } } […]

用于家庭开发的免费云数据库服务

是否有基于云的免费数据库服务,我可以用于asp.net应用程序(在线托管而不是在我自己的服务器上)和winform桌面应用程序(在我的电脑上运行)。 我想使用一个,以便两个应用程序可以使用相同的数据库。 SQL Azure看起来是一个很好的解决方案,但没有免费选项。

我在哪里可以找到一个好的ASP.NET MVC示例?

我在过去的两年里一直在使用Castle MonoRail,但是在新的工作中,我将成为一个带来ASP.NET MVC的人。 我理解观点,行动等的基础知识。 我只需要一个有MVC经验的人的好样本。 斯科特的Northwind交易员除了样品之外有什么好的联系吗?

无法在asp.net中发送mailmessage

以下代码无法向客户发送电子邮件,也不会抛出任何exception。 代码不发送任何电子邮件或exception但已执行。我对asp.net完全陌生。 有人可以帮我解决问题。 码: try { String userName = “ramesh”; String passWord = “123456”; String sendr = “ramesh@gmail.com”; String recer = “customer@yahoo.com”; String subject = “Comformation “; String body = “Dear Customer”; MailMessage msgMail = new MailMessage(sendr, recer, subject, body); int PortNumber = 25; SmtpClient smtp = new SmtpClient(“smtp.test.com”, PortNumber); msgMail.IsBodyHtml = true; smtp.DeliveryMethod = […]

Emgu CV无法在已部署的项目中加载DLL“cvextern”

我在我的ASP.NET项目中使用EmguCV进行面部检测。 当我从Visual Studio运行项目时,一切正常。 然后我通过Folder profile发布了发布版本,然后将这个发布的版本上传到smarterasp.net。 申请工作一般。 但是当应用程序尝试检测图像中的面时,会抛出exception: System.AggregateException: One or more errors occurred. —> System.TypeInitializationException: The type initializer for ‘Emgu.CV.CvInvoke’ threw an exception. —> System.DllNotFoundException: Unable to load DLL ‘cvextern’: The specified module could not be found. (Exception from HRESULT: 0x8007007E) at Emgu.CV.CvInvoke.RedirectError(CvErrorCallback errorHandler, IntPtr userdata, IntPtr prevUserdata) at Emgu.CV.CvInvoke..cctor() — End of inner exception […]

ASP.NET – 常见问题

当我使用ASP.NET时,我发现总是会遇到意想不到的事情,需要永远调试。 我认为拥有这些的综合列表对于那些“奇怪的错误”情况来说是很好的,加上我们对平台中的奇怪性的了解。 所以:用你的一个“Gotcha”来回答! 我将开始:在ASP.NET(VB)下,在try / catch块中执行Response.Redirect不会停止当前Response的执行,这可能导致针对同一Session执行两个并发响应。