小编Uwe*_*eim的帖子

将List <T>保存到XML文件

我想将从数据库中获取的记录保存在XML文件中,
将XML文件中的x个记录从一个自定义集合中List<T>
处理,然后将更新的项目保存回XML文件.

'T'是一个具有值类型属性的简单对象,类似于 -

public class T
{
   public int Id {get; set;}
   public string property1 {get; set;}
   public string property2 {get; set;}
}
Run Code Online (Sandbox Code Playgroud)

请指导我如何将自定义集合保存List<T>到XML文件,反之亦然?

另外,因为我没有发送这个XML文件,所以在某些回复中建议使用XmlSerializer是否有意义?

c# xml

12
推荐指数
3
解决办法
6万
查看次数

在Mongo中存储Utc和本地日期时间

我有一个Mongo C#实现,它将datetime存储为UTC.

MongoDB.Bson.Serialization.Options.DateTimeSerializationOptions options = 
    MongoDB.Bson.Serialization.Options.DateTimeSerializationOptions.UtcInstance;

var serializer = 
    new MongoDB.Bson.Serialization.Serializers.DateTimeSerializer(options);

MongoDB.Bson.Serialization.BsonSerializer.RegisterSerializer(
    typeof(DateTime),
    serializer);
Run Code Online (Sandbox Code Playgroud)

我还需要将用户本地时区与UTC一起存储.为了解释,我有两个属性

DateTime WorkItemToCompleteBy{get; set;}
[BsonDateTimeOptions(Kind = DateTimeKind.Unspecified)]
DateTime WorkItemToCompleteByLocal{get; set;}
Run Code Online (Sandbox Code Playgroud)

我想将澳大利亚/美国/印度/其他时间存储在本地属性中,并将相应的UTC值存储在另一个属性中.由于处理了几十个时区,我有代码将UTC转换为所需的时区并将其存储在WorkItemToCompleteByLocal属性中.我希望Mongo将这个值"按原样"存储并将其返回给我.问题是Mongo总是将它存储为ISODate并将值转换为Utc版本.解释.如果UTC是0730小时,我计算布里斯班时间为1730小时并将其设置为WorkitemToCompleteByLocal,它们将保存为

"WorkItemToCompleteBy" : ISODate("2013-06-05T07:30:00Z"),
"WorkItemToCompleteByLocal" : ISODate("2013-06-05T12:00:00Z"),
Run Code Online (Sandbox Code Playgroud)

Mongo将提供的时间解释为本地,服务器位于印度,并将其转换为相当于1200小时的UTC.虽然它将值恢复为1730(IST虽然)但是它违背了我的目的并阻止我在Mongo上运行任何基于本地时间的查询.没有想法.感谢任何帮助,以帮助存储WorkItemToCompleteByLocal日期'原样'而无需修改

c# datetime mongodb isodate

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

拒绝来自子目录htaccess中的所有内容,而不是覆盖root htaccess中的文件规则

我有一种情况,我试图拒绝访问我网站的子目录中的所有文件.我在这个子目录中添加了一个htaccess文件,并在所有指令中添加了deny.但是,我在站点根目录中也有一个htaccess文件,它允许特定的文件类型,看起来这些文件类型仍然可以在子目录中访问,即使我不再需要它们.我有一个解决方法(见下文),但我觉得必须有一个更好的方法.这是我的两个htaccess文件:

Root .htaccess

# Deny access to everything by default
Order Deny,Allow
deny from all

# Allow access to html files
<Files *.html>
    allow from all
</Files>
Run Code Online (Sandbox Code Playgroud)

子目录.htaccess

# Deny access to everything
deny from all
Run Code Online (Sandbox Code Playgroud)

解决方法:

子目录.htaccess

# Deny access to everything
Order Allow,Deny
deny from all
<Files *.*>
    deny from all
</Files>
Run Code Online (Sandbox Code Playgroud)

这就是我想要的,但我觉得应该有一种方法可以让所有陈述的拒绝本身.有谁知道怎么样?

apache .htaccess

12
推荐指数
2
解决办法
4万
查看次数

获取客户端计算机的IP地址

我试图使用C#获取客户端计算机的IP地址.我使用以下代码获取IP地址:

string IPAddress = HttpContext.Current.Request.UserHostAddress;
Run Code Online (Sandbox Code Playgroud)

但它给了我编码格式的响应,即 fe80::ed13:dee2:127e:1264%13

我怎样才能获得实际的IP地址?任何人都面临这个问题请分享一些想法.

c# asp.net ip-address

12
推荐指数
4
解决办法
5万
查看次数

无法绑定到组合框中的新显示成员

我有一个课程给我这个错误

public class Item 
{
    public string Name;
    public int Id

    public Item(string name, int id) 
    {
        Name = name; 
        Id = id;
    }
}   
Run Code Online (Sandbox Code Playgroud)

这是我的功能

 var lstItems = new List<Item>();
 while(...)
 {
     lstItems.Add(new Item(sAd_Ref, Convert.ToInt32(sAd_ID))); 
 }

 comboBox1.DataSource = lstItems;
 comboBox1.ValueMember = "Id";
 comboBox1.DisplayMember = "Name";
Run Code Online (Sandbox Code Playgroud)

在第二行,我正在例外

无法绑定到新的显示成员.

c# combobox list winforms

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

如何在hive对象中编写自定义类对象?

在 flutter 中使用 hive 时,我Profile profile在 hive 对象中使用了自定义类对象。

因此,最初,我将自定义类对象(Profile profile)设置为null在 Hive 框中添加时。

以下是我的 Hive 课程:

import 'dart:convert';
import 'package:hive/hive.dart';
import 'package:lpa_exam/src/model/listofexams.dart';
import 'package:lpa_exam/src/model/profile.dart';
part 'hiveprofile.g.dart';

@HiveType()
class PersonModel extends HiveObject{
  @HiveField(0)
  String language;

  @HiveField(1)
  String examName;

  @HiveField(2)
  int examId;

  @HiveField(3)
  Profile profile;

  @HiveField(4)
  ListExam listexam;

  @override
  String toString() {
    return jsonEncode({
      'language': this.language,
      'examName': this.examName,
      'examId': this.examId,
      'profile': this.profile,
      'listexam': this.listexam
    });
  }

  PersonModel(
      this.language, this.examName, this.examId, this.profile, this.listexam);
}
Run Code Online (Sandbox Code Playgroud)

可供参考的型材类别:

class Profile { …
Run Code Online (Sandbox Code Playgroud)

flutter

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

取消后台任务

当我的C#应用​​程序关闭时,它有时会陷入清理例程.具体来说,后台工作人员没有关闭.这基本上就是我试图关闭它的方式:

private void App_FormClosing(object sender,FormClosingEventArgs e){backgroundWorker1.CancelAsync(); 而(backgroundWorker1.IsBusy); //被困在这里 }

我应该采取不同的方式吗?我使用的是Microsoft Visual C#2008 Express Edition.谢谢.

附加信息:

后台工作人员似乎没有退出.这就是我所拥有的:

private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
   while (!backgroundWorker1.CancellationPending)
   {
      // Do something.
   }
}
Run Code Online (Sandbox Code Playgroud)

我还修改了清理代码:

private void App_FormClosing(object sender, FormClosingEventArgs e)
{
   while (backgroundWorker1.IsBusy)
   {
      backgroundWorker1.CancelAsync();
      System.Threading.Thread.Sleep(1000);
   }
}
Run Code Online (Sandbox Code Playgroud)

我还应该做些什么吗?

c# backgroundworker winforms

11
推荐指数
2
解决办法
4346
查看次数

跨会话的静态变量

在ASP.NET中,如果我声明一个变量(或对象)静态(或者如果我创建一个单例),我可以让它在多个用户的多个会话中持续存在(它在服务器范围内注册),这样我就不必在每个请求初始化它.

PHP中有这样的功能吗?谢谢

php session

11
推荐指数
2
解决办法
9991
查看次数

制作方形图像

如何将图像重新取样为方形,在c#中使用白色背景填充而不使用任何第三方库(仅限.Net框架)?

谢谢!

.net c# image

11
推荐指数
1
解决办法
7711
查看次数

如何修复向多个收件人发送邮件时抛出的异常?

在下面的代码片段中,我在'this.Recipients'上获得了FormatException.更具体地说,消息是"在邮件头中找到了无效字符:';'".

收件人是由分号(';'字符)分隔的三个电子邮件地址的字符串.从app.config中读取收件人列表,数据将其添加到"收件人"变量中.

如果多个收件人应以分号分隔,我怎么能收到此错误?有什么建议?一如既往,感谢您的帮助!

public bool Send()
{
    MailMessage mailMsg = 
       new MailMessage(this.Sender, this.Recipients, this.Subject, this.Message);

    SmtpClient smtpServer = new SmtpClient(SMTP);
    smtpServer.DeliveryMethod = SmtpDeliveryMethod.Network;
Run Code Online (Sandbox Code Playgroud)

编辑#1 - 表示使用分号.

c# email .net-4.0

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