私はファイル名を含む2つのArrayListを持っています.1つのリストにはより多くの名前があり、もう1つのリストには名前が少ないか、同じである可能性があります。両方のarraylistで共通ではないファイル名をリストし、それに応じてデータベースを更新したいので、確認できましたそれらが等しいかどうかですが、どのリストに余分な要素があり、どれがそれらであるかをリストすることはできません。
ここに私が現在使用しているコードがあります。
ArrayList DatabaseSavedThumbnail = objSlideShow.GetAllThumbnailBySlideShowId();
string[] FolderSavedThumbnail = Directory.GetFiles(Server.MapPath("~/Portals/2/SlideShowThumbnails/" + SlideShowName));
if (Directory.GetFiles(Server.MapPath("~/Portals/2/SlideShowThumbnails/" + SlideShowName)).Length > 0)
{
if (!Object.Equals(DatabaseSavedThumbnail, FolderSavedThumbnail))
{
for (int i = 0; i < DatabaseSavedThumbnail.Count && i < FolderSavedThumbnail.Length; i++)
{
if (!object.Equals(DatabaseSavedThumbnail[i], FolderSavedThumbnail[i]))
{
if (DatabaseSavedThumbnail.Count > FolderSavedThumbnail.Length)
{
objSlideShow.Thumbnail = "/Portals/2/SlideShowThumbnails/" + SlideShowName + "/" + Path.GetFileName(DatabaseSavedThumbnail[i].ToString());
}
else
{
objSlideShow.Thumbnail = "/Portals/2/SlideShowThumbnails/" + SlideShowName + "/" + Path.GetFileName(FolderSavedThumbnail[i].ToString());
}
}
Response.Write(objSlideShow.Thumbnail + "<br>");
/*objSlideShow.SlideTitle = String.Empty;
objSlideShow.SlideDescription = string.Empty;
objSlideShow.AddSlide();*/
}
}
}
しかし、これは、より多くの要素を持つarraylistのすべての要素をリストします。差分要素が必要なだけなので、それらの要素のみでデータベースを更新できます。
2 つの配列リストを比較する差分レコードを取得する方法を教えてください。