我想知道微软是否支持.NET Framework 2.0,3.0,3.5.
根据开发人员产品的Microsoft Support Lifetime页面,主流支持阶段应持续5年,并将支持阶段延长5年.
我在支持生命周期索引中找到了一个.NET Framework 2.0条目,但是我无法在那里(或.NET 4.0)找到.NET 3.0和.NET 3.5的任何条目.
根据.NET framework 2.0 ,.NET 2.0的主流支持阶段将于2011年4月12日结束.
我有两个问题:
考虑到.NET 3.0和.NET 3.5依赖于.NET 2.0 CLR主流对.NET 3.x的支持也将于2011年4月12日结束?
如果没有,何时结束对.NET 3.0和.NET 3.5的主流支持?
我正在构建一个应用程序,我有义务创建一个MailMessage(System.Net.mail.MailMessage)并将其保存在磁盘上,因为.msg扩展名不是.eml
下面是我用来将MailMessage保存为.msg文件的方法:
public static void Save(MailMessage Message, string FileName)
{
Assembly assembly = typeof(SmtpClient).Assembly;
Type _mailWriterType =
assembly.GetType("System.Net.Mail.MailWriter");
using (FileStream _fileStream =
new FileStream(FileName, FileMode.Create))
{
// Get reflection info for MailWriter contructor
ConstructorInfo _mailWriterContructor =
_mailWriterType.GetConstructor(
BindingFlags.Instance | BindingFlags.NonPublic,
null,
new Type[] { typeof(Stream) },
null);
// Construct MailWriter object with our FileStream
object _mailWriter =
_mailWriterContructor.Invoke(new object[] { _fileStream });
// Get reflection info for Send() method on MailMessage
MethodInfo _sendMethod =
typeof(MailMessage).GetMethod(
"Send",
BindingFlags.Instance | BindingFlags.NonPublic);
// …Run Code Online (Sandbox Code Playgroud) 我正在尝试将程序集重定向从web.config外部文件移动到外部文件中.原因是我想在一个地方保持绑定重定向并在调试和生产配置上使用它.
它有点工作,但我很擅长指定相对路径.
<configuration>
<!-- this works, but forces me to use the same path on dev and production machines -->
<linkedConfiguration href="file://c:\data\web.runtime.config"/>
<!-- none of those works -->
<linkedConfiguration href="file://web.runtime.config"/>
<linkedConfiguration href="file://..\web.runtime.config"/>
<linkedConfiguration href="file://~/web.runtime.config"/>
</configuration>
Run Code Online (Sandbox Code Playgroud)
我想保留web.runtime.config与Web应用程序其余部分相同的文件夹.是否可以在linkedConfiguration元素中指定相对路径?
更多信息:我在VS 2015中使用IIS Express和ASP MVC应用程序对其进行了测试.使用SysInternals Process Monitor监视文件访问时,相对路径似乎解析为\\web.runtime.config(无效的网络路径),而在使用绝对路径时没有\\添加前导.
.net binding web-config assemblybinding assembly-binding-redirect
我几乎花了一整天的时间来弄清楚如何最好地完成标题中提到的任务。
这是我到目前为止发现的:
至少有一个库为 .NET CF 提供了开箱即用的 TLS 1.2。缺点:他们收取许可证费用。如果有人对这个简单的解决方案感兴趣,Rebex Library
有几个 SSL/TLS 库允许与较低级别的服务器进行通信。我的方法是为我完成的 .NET Compact Framework 编译 BouncyCastle 库。
从这里开始,我找到了一篇文章,向我展示了如何实现 BouncyCastle 接口以及如何将各个部分组合在一起。有关详细信息,请参阅使用 BouncyCastle 库在 C# 中进行 HTTPS 调用。这几乎就是我的代码现在的样子。
我完成了与服务器的连接并发送了一个请求,我也得到了预期的响应。然后我想利用 HttpWebRequest 类,这样我就不必自己编写 HTTP 请求了。或者我是这么想的。不可能。HttpWebRequest 没有公共构造函数。因此我不能从那个类继承。例如,我也尝试使用 RestSharp 但这也仅依赖于 WebRequest 类。基本上所有可用的 HTTP 客户端都使用 Uri,然后自己打开一个流。似乎没有一个人接受一个已经打开的流并写入它或提供一些加密 API 来代替平台默认提供的内容(当然除了提到的 Rebex 库)。
所以我的问题是:是否有任何 HTTP 客户端可以将 HTTP 命令写入已经打开的流,或者至少给我一个我在其上设置的字符串表示?或者我是否必须自己编写类似的代码,即使已经有大量的这些实现?或者我完全错过了一个点,它可以更容易地解决?
我正在使用C#框架REBEX从VS2008中Win7 64bit上的FTP下载文件.
按F5开始调试后,我收到一条错误,即我正在下载的路径被拒绝.
我相信这可能是由于UAC和Win7/Vista上提升的权限问题.我做了一些研究,并在app.manifest上找到了一些信息,但是当我在app.manifest中更改requestedExecutionLevel时,它提到它与ClickOnce安全设置不兼容. 所以我禁用了ClickOnce,只是让它在构建项目或调试时自动重新启用.是的,我已经为该文件夹上的所有用户启用了完全安全权限,是的,我已经尝试将文件发送到我的...\AppData\Roaming \
我正在使用StreamWriter生成一个动态文件并将其保存在MemoryStream. 在我使用rebex sftp保存文件之前,一切似乎都很好。
他们在他们的网站上给出的例子工作正常:
// upload a text using a MemoryStream
string message = "Hello from Rebex FTP for .NET!";
byte[] data = System.Text.Encoding.Default.GetBytes(message);
System.IO.MemoryStream ms = new System.IO.MemoryStream(data);
client.PutFile(ms, "message.txt");
Run Code Online (Sandbox Code Playgroud)
但是下面的代码没有:
using (var stream = new MemoryStream())
{
using (var writer = new StreamWriter(stream))
{
writer.AutoFlush = true;
writer.Write("test");
}
client.PutFile(stream, "test.txt");
}
Run Code Online (Sandbox Code Playgroud)
文件“test.txt”被保存,但它是空的。我需要做的不仅仅是让它AutoFlush工作吗?
您希望在System.Net.HttpWebRequest和System.Net.WebClient中看到哪些功能不是开箱即用的?
哪些课程不能或不能轻易实现?
我希望能够:
.net ×4
c# ×4
rebex ×2
.net-cf-3.5 ×1
binding ×1
bouncycastle ×1
email ×1
ftp ×1
mailmessage ×1
msg ×1
sftp ×1
web-config ×1
webclient ×1