往数据库添加的时候(只添加以前未添加的记录的写法)c#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
public class Menu
{
public int Id { get; set; }
public string Url { get; set; }
public string Name { get; set; }
public string ImageUrl { get; set; }

}
public class Favorites
{
public int Id { get; set; }
public int MenuId { get; set; }
public string MenuUrl{get;set;}
public string MenuName{get;set;}

}
class Program
{

static void Main(string[] args)
{
//菜单初始化 start 这里相当于从数据库查询出来的记录
List<Menu> MenuList = new List<Menu>();
MenuList.Add(new Menu { Id=1,Url="baidu",Name="百度",ImageUrl="百度图片"});
MenuList.Add(new Menu { Id = 2, Url = "google", Name = "谷歌", ImageUrl = "谷歌图片" });
MenuList.Add(new Menu { Id = 3, Url = "souhu", Name = "搜狐", ImageUrl = "搜狐图片" });
MenuList.Add(new Menu { Id = 4, Url = "sina", Name = "新浪", ImageUrl = "新浪图片" });
MenuList.Add(new Menu { Id = 5, Url = "aiqiyi", Name = "爱奇艺", ImageUrl = "爱奇艺图片" });
MenuList.Add(new Menu { Id = 6, Url = "bilibili", Name = "bilibili", ImageUrl = "bilibili图片" });
///菜单初始化 end
//收藏夹初始化 start 这里相当于想要添加到数据的记录 只是要去除已经重复的记录
List<Favorites> favoritesList = new List<Favorites>();
favoritesList.Add(new Favorites { MenuId = 1, MenuUrl = "baidu", MenuName = "百度" });
favoritesList.Add(new Favorites { MenuId = 2, MenuUrl = "google", MenuName = "谷歌" });
favoritesList.Add(new Favorites { MenuId = 3, MenuUrl = "souhu", MenuName = "搜狐" });
favoritesList.Add(new Favorites { MenuId = 4, MenuUrl = "sina", MenuName = "新浪" });
favoritesList.Add(new Favorites { MenuId = 5, MenuUrl = "aiqiyi", MenuName = "爱奇艺" });
favoritesList.Add(new Favorites { MenuId = 6, MenuUrl = "bilibili", MenuName = "bilibili" });
favoritesList.Add(new Favorites { MenuId = 7, MenuUrl = "tengxun", MenuName = "腾讯" });
favoritesList.Add(new Favorites { MenuId = 8, MenuUrl = "songxia", MenuName = "松下" });
//收藏夹初始化 end
#region 用于接收菜单中的选项 这里相当于已经存在的收藏
List<Favorites> list = new List<Favorites>();
list = MenuList.Select(m => new Favorites() { MenuId = m.Id, MenuUrl = m.Url }).ToList();
#endregion
//用于接收为收藏过的收藏
List<Favorites> list2 = new List<Favorites>();
//最新的收藏之中只要有一个收藏的MenuId,MenuUrl是在以前的收藏中出现过的就不是最新收藏 当b为true的时候为最新收藏放到list2中 定位最新收藏
favoritesList.ForEach(f =>
{
bool b = true;
list.ForEach(f1 => {
if (f.MenuId == f1.MenuId && f.MenuUrl == f1.MenuUrl)
{
b = false;

}

}); //foreach end
if (b)
{
list2.Add(f);
}
});

}
}
}

时间: 2024-10-12 21:18:42

往数据库添加的时候(只添加以前未添加的记录的写法)c#的相关文章

计算数据库中各个表的数据量和每行记录所占用空间--添加架构信息-读后感及知识整理

参考文章: SQL Server 游标运用:查看一个数据库所有表大小信息(Sizes of All Tables in a Database) 分享一个SQLSERVER脚本(计算数据库中各个表的数据量和每行记录所占用空间) 监控SQLServer 数据库表每天的空间变化情况 仔细拜读上面三位的文章,不会的知识点又参考了MSDN,巩固了知识点如下: 知识点: 1.表的架构信息,涉及的系统对象 sys.schemas 和 INFORMATION_SCHEMA.TABLES,但后者不是官方推荐方式,

Ubuntu下wxWidgets学生公寓管理编程,sqlite3的用法(mysql数据库),窗体,下面是部分添加和删除功能,其他功能可以联系我。。

以下是学生公寓信息管理的增加和删除,仅供参考.. void StuManaFrame::OnAdd(wxCommandEvent &event) { //add student's dormitory infomation sqlite3 *db=NULL; int flag; char *errmsg; flag = sqlite3_open("./stuinfo.db",&db); if(SQLITE_OK != flag) { wxLogMessage("

是数据库设置主键自增的时候添加也可以自定义主键值

SET IDENTITY_INSERT  dbo.PDAUserInfo ON //开启当前表的可复制功能,仅在当前绘画中有效 insert into dbo.PDAUserInfo(ID,UserName) values(43,'asdf') SET IDENTITY_INSERT  dbo.PDAUserInfo OFF    //关闭当前表的可复制功能,仅在当前绘画中有效 insert into dbo.PDAUserInfo(UserName) values('asdf') 是数据库设置

hibernate 向数据库里设置了默认值的字段添加数据为null时失效的问题

写ssh项目时设置了一个boolean类型的字段,想让他添加的时候默认为1 结果添加的时候不输入数据的话会将null转成0添加 最后再映射hbm文件里的property下设置insert=false 并且设置其非空,默认值生效 <property>元素 insert属性:设置为false,在insert语句中不包含这个字段,表示永远不会被插入 原文地址:https://www.cnblogs.com/King-Jin/p/10961640.html

[添加用户]解决useradd 用户后没有添加用户Home目录的情况,Linux改变文件或目录的访问权限命令,linux修改用户密码,usermod的ysuum安装包。飞

usermod的yum安装包: shadow-utils 将nobody用户添加到nogroup 组: usermod -g nogroup nobody cat /etc/passwd|grep nobody nobody:x:65534:65534:nobody:/var/lib/nobody:/bin/bash 第3个字段是65534:意思就是,UID(用户的ID)是500. 第4个字段是65534:意思就是.GID(用户的组ID)的500. 使用usermod -g nogroup no

通过jquery来实现文本框和下拉框动态添加效果,能根据自己的需求来自定义最多允许添加数量,实用的jquery动态添加文本框特效

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-

mybatis+oracle添加一条数据并返回所添加数据的主键问题

最近做mybatis+oracle项目的时候解决添加一条数据并返回所添加数据的主键问题 controller层 @RequestMapping("/addplan") public @ResponseBody OnlineAddplanWithBLOBs insertOnlineAddplan(OnlineAddplanWithBLOBs plan) throws Exception{ //plan是添加的数据,planid为数据主键,此时对象中主键为null int n = serv

动态数组,数组初始化,数组内存释放,向数组中添加一个元素,向数组中添加多个元素,数组打印,顺序查找,二分查找,查找数组并返回地址,冒泡排序,改变数组中某个元素的值,删除一个数值,删除所有,查找含有

 1定义接口: Num.h #ifndef_NUM_H_ #define_NUM_H_ #include<stdio.h> #include<stdlib.h> /************************************************************************/ /*数组的结构体类型                                                    */ /*******************

如何在网页中添加视频?怎样在网页中添加视频

在网页中添加视频的方法今天终于实现了,为了能让那些需要在网页中自由播放自己的视频的朋友收到这个文章,我把标题写的长了点.首先说一下需求,在之前做的一个静态页面中,要加入一个视频,要求自动播放,还要能暂停,有播放进度的功能,但是在百度上很久,一直没有找到这个问题,可能自己太笨了,后来,没有办法,就引用了优酷的连接,但是这样在去掉广告的情况下,还是经常.偶尔会出现广告,这个很让人火大,因为本身自己就是广告,优酷在放30秒,基本人家已经跳出这个网页了,今天终于在别人的网页中看到了一段代码,于是一搜,找

百度地图循环添加标注,并循环为标注添加信息窗口问题解决

原文:百度地图循环添加标注,并循环为标注添加信息窗口问题解决 最近几年在搞地图方面的开发,主要是循环为坐标添加标注并为标注添加弹出信息窗口,起初我的代码如下: var map = new BMap.Map("Mapcontainer"); var JsonObj = eval(JsonStr); if (JsonObj != null) { for (var i = 0; i < JsonObj.length; i++) { var point = new BMap.Point(