{"id":1963,"date":"2015-12-17T00:21:33","date_gmt":"2015-12-17T00:21:32","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=1963"},"modified":"2025-06-13T21:02:08","modified_gmt":"2025-06-14T04:02:08","slug":"introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/ko\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/","title":{"rendered":"Linq2Couchbase \uac1c\ubc1c\uc790 \ud504\ub9ac\ubdf0 1: Couchbase N1QL\uc6a9 Linq \uc81c\uacf5\uc5c5\uccb4\ub97c \uc18c\uac1c\ud569\ub2c8\ub2e4!"},"content":{"rendered":"<address><strong>*\uc774 \uac8c\uc2dc\ubb3c\uc758 \uc0d8\ud50c \ucf54\ub4dc\ub294 \ub2e4\uc74c\uc744 \ucc38\uc870\ud558\uc138\uc694. <a href=\"https:\/\/github.com\/couchbaselabs\/couchbase-net-examples\" target=\"_blank\" rel=\"noopener\">\uce74\uc6b0\uce58\ubca0\uc774\uc2a4-\ub137-\uc608\uc2dc<\/a> \ud504\ub85c\uc81d\ud2b8 <a href=\"https:\/\/github.com\/couchbaselabs\/couchbase-net-examples\/tree\/master\/Src\/Couchbase.Linq2CouchbaseExample\" target=\"_blank\" rel=\"noopener\">\uc5ec\uae30<\/a>.<\/strong><\/address>\n<p>Couchbase N1QL\uc6a9 \uacf5\uc2dd Linq \uacf5\uae09\uc790\uc758 \uac1c\ubc1c\uc790 \ud504\ub9ac\ubdf0 #1\uc744 \ubc1c\ud45c\ud558\uac8c \ub418\uc5b4 \ub9e4\uc6b0 \uae30\uc069\ub2c8\ub2e4! \uc774\uac83\uc740 \uacf5\uae09\uc790\ub97c \uc18c\uac1c\ud558\uace0, \uae30\ubcf8 \uae30\ub2a5\uc744 \ubbf8\ub9ac \uc0b4\ud3b4\ubcf4\uace0, \uc0ac\uc6a9 \ubc29\ubc95\uc744 \uc124\uba85\ud558\uae30 \uc704\ud55c \ub9e4\uc6b0 \ucd08\uae30 \uc0ac\uc804 \ub9b4\ub9ac\uc2a4\uc785\ub2c8\ub2e4. \uc774 \ube14\ub85c\uadf8\uc5d0\uc11c\ub294 \uc624\ub298 \uacf5\uae09\uc790\ub97c \uc0ac\uc6a9\ud558\ub294 \ubc29\ubc95\uc5d0 \ub300\ud55c \ub2e8\uacc4\ub97c \uc0b4\ud3b4\ubcf4\ub294 \uc0d8\ud50c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ub9cc\ub4e4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<h2>\uba74\ucc45 \uc870\ud56d<\/h2>\n<p>\uc0ac\uc804 \ub9b4\ub9ac\uc2a4\uc774\ubbc0\ub85c \ubca0\ud0c0 \ubc84\uc804\uc774 \ucd9c\uc2dc\ub420 \ub54c\uae4c\uc9c0 \uacf5\uac1c API\uac00 \ud06c\uac8c \ubcc0\uacbd\ub420 \uac83\uc73c\ub85c \uc608\uc0c1\ub429\ub2c8\ub2e4. Couchbase.Linq \ud504\ub85c\uc81d\ud2b8\ub294 SDK\uc758 GA \ub9b4\ub9ac\uc2a4\uc5d0 \ub530\ub77c \ub2ec\ub77c\uc9c4\ub2e4\ub294 \uc810\uc5d0 \uc720\uc758\ud558\uc138\uc694. 2.2.0 SDK\uc758 GA\uac00 \ucd9c\uc2dc\ub420 \ub54c\uae4c\uc9c0 \ud504\ub85c\ub355\uc158 \ud658\uacbd\uc5d0\uc11c \uc774 \uacf5\uae09\uc790\ub97c \uc0ac\uc6a9\ud558\uc9c0 \ub9c8\uc138\uc694!<\/p>\n<h2>\ud328\ud0a4\uc9c0 \ubc1b\uae30<\/h2>\n<p>\uc774 \ud328\ud0a4\uc9c0\ub294 NuGet\uc5d0 \uc0ac\uc804 \ub9b4\ub9ac\uc2a4\ub418\uc5b4 \uc788\uc73c\uba70 \ub2e4\uc74c\uc5d0\uc11c \ucc3e\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/www.nuget.org\/packages\/Linq2Couchbase\/1.0.0-dp1\" target=\"_blank\" rel=\"noopener\">\uc5ec\uae30<\/a>. Visual Studio\ub97c \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0 \ud504\ub85c\uc81d\ud2b8\uc5d0 \uc885\uc18d \uc694\uc18c\ub97c \ud3ec\ud568\ud558\ub824\uba74 NuGet \ud328\ud0a4\uc9c0 \uad00\ub9ac\uc790 \ub610\ub294 NuGet \ud328\ud0a4\uc9c0 \uad00\ub9ac\uc790 \ucf58\uc194\uc744 \uc0ac\uc6a9\ud574\uc57c \ud560 \uac83\uc785\ub2c8\ub2e4.<\/p>\n<p>\uba3c\uc800 Visual Studio\ub97c \uc0ac\uc6a9\ud558\uc5ec \ucf58\uc194 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ub9cc\ub4ed\ub2c8\ub2e4. \uadf8\ub7f0 \ub2e4\uc74c \ud328\ud0a4\uc9c0 \uad00\ub9ac\uc790\ub97c \uc0ac\uc6a9\ud558\uc5ec Couchbase.Linq\ub97c \uac80\uc0c9\ud569\ub2c8\ub2e4:<\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" src=\"\/wp-content\/original-assets\/2015\/august\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/linq-provider-nuget.jpg\" \/><\/p>\n<p>\uac80\uc0c9\ud560 \ub54c \"\uc0ac\uc804 \ub9b4\ub9ac\uc2a4 \ud3ec\ud568\"\uc744 \uc120\ud0dd\ud558\uc9c0 \uc54a\uc73c\uba74 \ud328\ud0a4\uc9c0\uac00 \uac80\uc0c9 \uacb0\uacfc\uc5d0 \ub098\ud0c0\ub098\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \"\uc124\uce58\"\ub97c \ud074\ub9ad\ud558\uba74 \ubaa8\ub4e0 \uc885\uc18d\uc131\uc774 \uc790\ub3d9\uc73c\ub85c \uc124\uce58\ub429\ub2c8\ub2e4. \ub9c8\uc9c0\ub9c9\uc73c\ub85c \ud328\ud0a4\uc9c0 \uad00\ub9ac\uc790 \ub300\ud654 \uc0c1\uc790\ub97c \ub2eb\uc2b5\ub2c8\ub2e4.<\/p>\n<h2>\uad6c\uc131 \ubc0f \ucd08\uae30\ud654<\/h2>\n<p>\ud604\uc7ac Couchbase Linq \uacf5\uae09\uc790\ub294 Couchbase .NET 2.1 SDK\uc758 ClusterHelper \ud074\ub798\uc2a4\uc5d0 \ub300\ud55c \ud558\ub4dc \uc885\uc18d\uc131\uc744 \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4. ClusterHelper\ub294 \uc131\ub2a5\uc0c1\uc758 \uc774\uc720\ub85c \uc218\uba85\uc774 \uae38\uc5b4\uc57c \ud558\ub294 \ubc84\ud0b7 \ubc0f \uae30\ud0c0 \ub9ac\uc18c\uc2a4\ub97c \uc27d\uac8c \uad00\ub9ac\ud560 \uc218 \uc788\uac8c \ud574\uc8fc\ub294 \ud074\ub798\uc2a4\uc785\ub2c8\ub2e4. \ud074\ub7ec\uc2a4\ud130 \uac1d\uccb4\uc5d0\ub294 \uc2f1\uae00\ud1a4\uc774\uace0 \ubc84\ud0b7 \ucc38\uc870\uc5d0\ub294 \"\uba40\ud2f0\ud1a4\"\uc785\ub2c8\ub2e4. \uc774 \uc885\uc18d\uc131\uc740 \ud5a5\ud6c4 \ubc84\uc804\uc5d0\uc11c \uc81c\uac70\ub420 \uac00\ub2a5\uc131\uc774 \ub192\uc9c0\ub9cc \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c Linq \uacf5\uae09\uc790\ub97c \uc0ac\uc6a9\ud560 \ub54c\ub294 \ubc18\ub4dc\uc2dc \uace0\ub824\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<p>\uc774 \uc885\uc18d\uc131\uc744 \ucc98\ub9ac\ud558\ub824\uba74 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \ud074\ub7ec\uc2a4\ud130\ud5ec\ud37c\ub97c \uc0ac\uc6a9\ud558\uace0 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \uc218\uba85 \uae30\uac04 \ub3d9\uc548 \uba85\uc2dc\uc801\uc73c\ub85c Initialize()\ub97c \ud55c \ubc88\ub9cc \ud638\ucd9c\ud558\uba74 \ub429\ub2c8\ub2e4. \uae30\ubcf8\uc801\uc73c\ub85c localhost\ub294 \ud074\ub77c\uc774\uc5b8\ud2b8\ub97c \ubd80\ud2b8\uc2a4\ud2b8\ub7a9\ud558\ub294 \ub370 \uc0ac\uc6a9\ub418\uc9c0\ub9cc \uc6d0\ud558\ub294 \ub300\ub85c \uc0ac\uc6a9\uc790 \uc9c0\uc815\ud560 \uc218 \uc788\ub294 ClientConfiguration\uc744 \uc0ac\uc6a9\ud558\ub294 \uc624\ubc84\ub85c\ub4dc\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><script src=\"https:\/\/gist.github.com\/jeffrymorris\/f2d3c147e32d4a554d96.js\"><\/script><\/p>\n<p>\uc704\uc758 \uc694\uc810\uc5d0\uc11c\ub294 \uc0c8 \uad6c\uc131\uc744 \uc0dd\uc131\ud558\uace0 \ub85c\uceec\uc5d0 \uc124\uce58\ub41c Couchbase Server \uc778\uc2a4\ud134\uc2a4\ub97c \ubd80\ud2b8\uc2a4\ud2b8\ub7a9 \ub300\uc0c1\uc73c\ub85c \uc9c0\uc815\ud569\ub2c8\ub2e4. \uadf8\ub7f0 \ub2e4\uc74c Initialize\ub97c \ud638\ucd9c\ud558\uace0 \uad6c\uc131\uc744 \uc804\ub2ec\ud558\uc5ec \ud074\ub7ec\uc2a4\ud130 \ud5ec\ud37c \uac1d\uccb4\ub97c \ucd08\uae30\ud654\ud569\ub2c8\ub2e4.<\/p>\n<h2>DbContext \uc778\uc2a4\ud134\uc2a4 \ub9cc\ub4e4\uae30<\/h2>\n<p>ClusterHelper\ub97c \ucd08\uae30\ud654\ud55c \ud6c4\uc5d0\ub294 \uae30\ubcf8 \ub370\uc774\ud130 \uc800\uc7a5\uc18c(Couchbase \ubc84\ud0b7)\ub97c \ucd94\uc0c1\ud654\ud558\uace0 \ucffc\ub9ac\ub97c \uc791\uc131\ud558\uace0 (\uace7) \ubc84\ud0b7\uc5d0 \ub2e4\uc2dc \uc81c\ucd9c\ub420 \ubcc0\uacbd \uc0ac\ud56d\uc744 \ud568\uaed8 \uadf8\ub8f9\ud654\ud558\ub294 \uc218\ub2e8\uc744 \uc81c\uacf5\ud558\ub294 DbContext \uac1d\uccb4\ub97c \uc0dd\uc131\ud569\ub2c8\ub2e4.<\/p>\n<p><script src=\"https:\/\/gist.github.com\/jeffrymorris\/929cfb8aa5403aa29cc9.js\"><\/script><\/p>\n<p>DbContext \uc0dd\uc131\uc790\ub294 \ud074\ub7ec\uc2a4\ud130 \uac1d\uccb4\ub97c \ubc1b\uc740 \ub2e4\uc74c \ucffc\ub9ac\uc5d0 \uc0ac\uc6a9\ud560 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ubc84\ud0b7\uc758 \uc774\ub984\uc744 \ubc1b\uc2b5\ub2c8\ub2e4.<\/p>\n<p>DbContext\ub97c \uc0dd\uc131\ud558\uba74 \uacc4\uc18d\ud574\uc11c \ubc18\ubcf5\ud574\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc73c\uba70, \uadf8 \uc790\uccb4\uc5d0 \ub300\ud574 \uc870\uc778\uc744 \uc218\ud589\ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4. \ub2e4\uc74c \uae00\uc5d0\uc11c\ub294 DbContext\uc5d0\uc11c \uc0c1\uc18d\ud558\uc5ec \ubc84\ud0b7 \ub0b4\uc758 \ubb38\uc11c\uc5d0 \ub9e4\ud551\ub418\ub294 \uad6c\uccb4\uc801\uc778 \ucffc\ub9ac \uac1d\uccb4\ub97c \ub9cc\ub4dc\ub294 \ubc29\ubc95\uc744 \ubcf4\uc5ec\ub4dc\ub9ac\uace0, \uad81\uadf9\uc801\uc73c\ub85c\ub294 \ubc84\ud0b7\uc5d0\uc11c \uc774\ub7ec\ud55c \uac1d\uccb4\ub97c \uc790\ub3d9\uc73c\ub85c \uc0dd\uc131\ud558\ub294 \ub3c4\uad6c \uc9c0\uc6d0\ub3c4 \uc81c\uacf5\ud560 \uc608\uc815\uc785\ub2c8\ub2e4.<\/p>\n<h2>Linq \ucffc\ub9ac \uc791\uc131<\/h2>\n<p>Linq \ucffc\ub9ac\ub97c \ub9cc\ub4dc\ub294 \uac83\uc740 \ub300\ubd80\ubd84\uc758 \uacbd\uc6b0 \ub2e4\ub978 Linq \uc81c\uacf5\uc5c5\uccb4\ub97c \uc0ac\uc6a9\ud558\ub294 \uac83\uacfc \ub2e4\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \ub2e4\ub9cc Linq2Couchbase\uac00 N1QL \ud0a4\uc6cc\ub4dc\uc640 NEST, UNNEST \ubc0f USE KEYS\uc640 \uac19\uc740 \uac1c\ub150\uc744 \uc9c0\uc6d0\ud55c\ub2e4\ub294 \uc810\uc774 \ub2e4\ub985\ub2c8\ub2e4.<\/p>\n<p><script src=\"https:\/\/gist.github.com\/jeffrymorris\/a8bd8ff9f1a8681a88d1.js\"><\/script><\/p>\n<p>\ubaa8\ub4e0 Linq \ucffc\ub9ac\uc640 \ub9c8\ucc2c\uac00\uc9c0\ub85c \uc5f4\uac70\ud560 \ub54c\uae4c\uc9c0 \uc2e4\ud589\uc774 \uc9c0\uc5f0\ub429\ub2c8\ub2e4:<\/p>\n<p><script src=\"https:\/\/gist.github.com\/jeffrymorris\/dad64ad4e1d12e13b9f4.js\"><\/script><\/p>\n<p>\uc5ec\uae30\uc11c\ub294 \uc774\uc804 \ub2e8\uacc4\uc5d0\uc11c \uc0dd\uc131\ud55c \ucffc\ub9ac\ub97c \ub2e8\uc21c\ud788 \uc5f4\uac70\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uacf5\uae09\uc790\ub294 \uc0dd\uc131\ub41c \ud45c\ud604\uc2dd\uc744 \uac00\uc838\uc640\uc11c N1QL \ucffc\ub9ac\ub85c \ubcc0\ud658\ud558\uace0 \uc751\ub2f5\uc758 \ud589 \ubd80\ubd84\ub9cc \ubc18\ud658\ud558\ub294 \ucffc\ub9ac\ub97c \uc2e4\ud589\ud569\ub2c8\ub2e4. \uc608\uc678\ub294 Linq \uacf5\uae09\uc790\uc5d0 \uc758\ud574 \ubc1c\uc0dd\ud558\uba70, \uc774\ub294 IQueryResult \uad6c\ud604\uc758 \uc18d\uc131\uc73c\ub85c \uc608\uc678\ub97c \ubc18\ud658\ud558\ub294 Couchbase SDK\uc640\ub294 \ub2e4\ub978 \ub3d9\uc791\uc774\ub77c\ub294 \uc810\uc5d0 \uc720\uc758\ud558\uc138\uc694.<\/p>\n<h2>WHERE \uc808\uc740 \uc5b4\ub5bb\uac8c \ub418\ub098\uc694?<\/h2>\n<p>\ubb38\uc11c \uc720\ud615\ubcc4\ub85c \ud544\ud130\ub9c1\ud558\uae30 \uc704\ud574 WHERE \uc808\uc744 \uc9c0\uc815\ud558\uc9c0 \uc54a\uc740 \uac83\uc744 \ubcf4\uc168\ub098\uc694? \ubc84\ud0b7\uc740 \uc774\uae30\uc885 \ubb38\uc11c\uc758 \ud0a4 \uacf5\uac04\uc774\uae30 \ub54c\ubb38\uc5d0 \uacb0\uacfc\ub97c \ud544\ud130\ub9c1\ud560 \uc220\uc5b4\uac00 \uc5c6\uc73c\uba74 \ucffc\ub9ac\uac00 \uc0dd\uc131\ub418\uba74 \ubc84\ud0b7 \ub0b4\uc758 \ubaa8\ub4e0 \ubb38\uc11c\uc758 \ubaa8\ub4e0 \ub2e8\uc77c Name \uc18d\uc131\uc774 \ubc18\ud658\ub429\ub2c8\ub2e4(\ub9e5\uc8fc \uc0d8\ud50c \ubc84\ud0b7\uc5d0\ub294 \ub9e5\uc8fc\uc640 \uc591\uc870\uc7a5 \ubb38\uc11c \uc720\ud615\uc774 \uc788\uc74c). DRY \uc0c1\ud0dc\ub97c \uc720\uc9c0\ud558\uace0 \uc2f6\uace0 \ubaa8\ub4e0 \ucffc\ub9ac\uc5d0 \ub300\ud574 WHERE type=\"[document-type]\"\uc744 \ucd94\uac00\ud558\ub294 \uac83\uc740 \uc9c0\ub8e8\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c, \ubb38\uc11c \ud544\ud130\ub97c \ud22c\uc601\uc5d0 \uc0ac\uc6a9\ud558\ub294 POCO\uc758 \uc18d\uc131\uc73c\ub85c \uc9c0\uc815\ud558\ub294 \ubc29\ubc95\uc774 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><script src=\"https:\/\/gist.github.com\/jeffrymorris\/ce310c96d56ce1c6f8ab.js\"><\/script><\/p>\n<p>\uc5ec\uae30 POCO \uc815\uc758\uc5d0\uc11c EntityTypeFilter\ub97c \ucd94\uac00\ud558\uace0 \ucffc\ub9ac\ub85c \ud0c0\uac9f\ud305\ud560 \ubb38\uc11c \uc720\ud615\uc73c\ub85c \"\ub9e5\uc8fc\"\ub97c \uc9c0\uc815\ud588\uc2b5\ub2c8\ub2e4. \uba4b\uc9c0\ub124\uc694!<\/p>\n<h2>\uacb0\ub860<\/h2>\n<p>\ud328\ud0a4\uc9c0\ub97c \uc124\uce58\ud558\uace0 \uc0ac\uc6a9\ud574 \ubcf4\uc138\uc694. \uc5ec\ub7ec\ubd84\uc758 \uc758\uacac\uc744 \uc54c\ub824\uc8fc\uc2dc\uace0 \ubc84\uadf8\ub97c \ubc1c\uacac\ud558\uac70\ub098 \uae30\ub2a5 \uc694\uccad\uc774 \uc788\ub294 \uacbd\uc6b0 <a href=\"https:\/\/issues.couchbase.com\/browse\/linq\" target=\"_blank\" rel=\"noopener\">Jira \ud2f0\ucf13<\/a> \ub610\ub294 <a href=\"https:\/\/github.com\/couchbaselabs\/Linq2Couchbase\" target=\"_blank\" rel=\"noopener\">\ud480 \ub9ac\ud018\uc2a4\ud2b8<\/a>!<\/p>","protected":false},"excerpt":{"rendered":"<p>*Sample code for this post is available in the couchbase-net-examples project here. I am very excited to announce developer preview #1 of the official Linq provider for Couchbase N1QL! This is a very early pre-release to introduce the provider, preview [&hellip;]<\/p>","protected":false},"author":21,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1811,1814,10127,1812,2201],"tags":[1468,1469],"ppma_author":[8970],"class_list":["post-1963","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dotnet","category-application-design","category-c-sharp","category-n1ql-query","category-tools-sdks","tag-linq","tag-linq2couchbase"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.8 (Yoast SEO v25.8) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Developer Preview 1 : The Linq provider for Couchbase N1QL!<\/title>\n<meta name=\"description\" content=\"Learn basic functionality of the Linq provider by checking out sample application that goes over the steps on how to use the provider today.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/ko\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Introducing Linq2Couchbase Developer Preview 1: The Linq provider for Couchbase N1QL!\" \/>\n<meta property=\"og:description\" content=\"Learn basic functionality of the Linq provider by checking out sample application that goes over the steps on how to use the provider today.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/ko\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2015-12-17T00:21:32+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T04:02:08+00:00\" \/>\n<meta name=\"author\" content=\"Jeff Morris, Senior Software Engineer, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@jeffrysmorris\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeff Morris, Senior Software Engineer, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/\"},\"author\":{\"name\":\"Jeff Morris, Senior Software Engineer, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/b678bdd9f7b21a33d43ea965865a3341\"},\"headline\":\"Introducing Linq2Couchbase Developer Preview 1: The Linq provider for Couchbase N1QL!\",\"datePublished\":\"2015-12-17T00:21:32+00:00\",\"dateModified\":\"2025-06-14T04:02:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/\"},\"wordCount\":806,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"keywords\":[\"Linq\",\"linq2couchbase\"],\"articleSection\":[\".NET\",\"Application Design\",\"C#\",\"SQL++ \/ N1QL Query\",\"Tools &amp; SDKs\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/\",\"name\":\"Developer Preview 1 : The Linq provider for Couchbase N1QL!\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2015-12-17T00:21:32+00:00\",\"dateModified\":\"2025-06-14T04:02:08+00:00\",\"description\":\"Learn basic functionality of the Linq provider by checking out sample application that goes over the steps on how to use the provider today.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Introducing Linq2Couchbase Developer Preview 1: The Linq provider for Couchbase N1QL!\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/b678bdd9f7b21a33d43ea965865a3341\",\"name\":\"Jeff Morris, Senior Software Engineer, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/73188ee2831025d81740e12e1ed80812\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5f910befdbd58de8bac85293df7f544680843061ecc921ba7d293d6d52076ab3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5f910befdbd58de8bac85293df7f544680843061ecc921ba7d293d6d52076ab3?s=96&d=mm&r=g\",\"caption\":\"Jeff Morris, Senior Software Engineer, Couchbase\"},\"description\":\"Jeff Morris is a Senior Software Engineer at Couchbase. Prior to joining Couchbase, Jeff spent six years at Source Interlink as an Enterprise Web Architect. Jeff is responsible for the development of Couchbase SDKs and how to integrate with N1QL (query language).\",\"sameAs\":[\"https:\/\/x.com\/jeffrysmorris\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/ko\/author\/jeff-morris\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Developer Preview 1 : The Linq provider for Couchbase N1QL!","description":"\uc9c0\uae08 \ubc14\ub85c \uacf5\uae09\uc790 \uc0ac\uc6a9 \ubc29\ubc95\uc744 \uc548\ub0b4\ud558\ub294 \uc0d8\ud50c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ud655\uc778\ud558\uc5ec Linq \uacf5\uae09\uc790\uc758 \uae30\ubcf8 \uae30\ub2a5\uc5d0 \ub300\ud574 \uc54c\uc544\ubcf4\uc138\uc694.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/ko\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/","og_locale":"ko_KR","og_type":"article","og_title":"Introducing Linq2Couchbase Developer Preview 1: The Linq provider for Couchbase N1QL!","og_description":"Learn basic functionality of the Linq provider by checking out sample application that goes over the steps on how to use the provider today.","og_url":"https:\/\/www.couchbase.com\/blog\/ko\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/","og_site_name":"The Couchbase Blog","article_published_time":"2015-12-17T00:21:32+00:00","article_modified_time":"2025-06-14T04:02:08+00:00","author":"Jeff Morris, Senior Software Engineer, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@jeffrysmorris","twitter_misc":{"Written by":"Jeff Morris, Senior Software Engineer, Couchbase","Est. reading time":"4\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/"},"author":{"name":"Jeff Morris, Senior Software Engineer, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/b678bdd9f7b21a33d43ea965865a3341"},"headline":"Introducing Linq2Couchbase Developer Preview 1: The Linq provider for Couchbase N1QL!","datePublished":"2015-12-17T00:21:32+00:00","dateModified":"2025-06-14T04:02:08+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/"},"wordCount":806,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","keywords":["Linq","linq2couchbase"],"articleSection":[".NET","Application Design","C#","SQL++ \/ N1QL Query","Tools &amp; SDKs"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/","url":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/","name":"Developer Preview 1 : The Linq provider for Couchbase N1QL!","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2015-12-17T00:21:32+00:00","dateModified":"2025-06-14T04:02:08+00:00","description":"\uc9c0\uae08 \ubc14\ub85c \uacf5\uae09\uc790 \uc0ac\uc6a9 \ubc29\ubc95\uc744 \uc548\ub0b4\ud558\ub294 \uc0d8\ud50c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ud655\uc778\ud558\uc5ec Linq \uacf5\uae09\uc790\uc758 \uae30\ubcf8 \uae30\ub2a5\uc5d0 \ub300\ud574 \uc54c\uc544\ubcf4\uc138\uc694.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/introducing-linq2couchbase-developer-preview-1-the-linq-provider-for-couchbase-n1ql\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Introducing Linq2Couchbase Developer Preview 1: The Linq provider for Couchbase N1QL!"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","description":"NoSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4, Couchbase","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/b678bdd9f7b21a33d43ea965865a3341","name":"Jeff Morris, \uc218\uc11d \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4, Couchbase","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/73188ee2831025d81740e12e1ed80812","url":"https:\/\/secure.gravatar.com\/avatar\/5f910befdbd58de8bac85293df7f544680843061ecc921ba7d293d6d52076ab3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5f910befdbd58de8bac85293df7f544680843061ecc921ba7d293d6d52076ab3?s=96&d=mm&r=g","caption":"Jeff Morris, Senior Software Engineer, Couchbase"},"description":"Jeff Morris\ub294 Couchbase\uc758 \uc218\uc11d \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4\uc785\ub2c8\ub2e4. Couchbase\uc5d0 \uc785\uc0ac\ud558\uae30 \uc804\uc5d0\ub294 6\ub144 \ub3d9\uc548 Source Interlink\uc5d0\uc11c \uc5d4\ud130\ud504\ub77c\uc774\uc988 \uc6f9 \uc544\ud0a4\ud14d\ud2b8\ub85c \uadfc\ubb34\ud588\uc2b5\ub2c8\ub2e4. Jeff\ub294 Couchbase SDK \uac1c\ubc1c\uacfc N1QL(\ucffc\ub9ac \uc5b8\uc5b4)\uacfc \ud1b5\ud569\ud558\ub294 \ubc29\ubc95\uc744 \ub2f4\ub2f9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4.","sameAs":["https:\/\/x.com\/jeffrysmorris"],"url":"https:\/\/www.couchbase.com\/blog\/ko\/author\/jeff-morris\/"}]}},"authors":[{"term_id":8970,"user_id":21,"is_guest":0,"slug":"jeff-morris","display_name":"Jeff Morris, Senior Software Engineer, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/5f910befdbd58de8bac85293df7f544680843061ecc921ba7d293d6d52076ab3?s=96&d=mm&r=g","author_category":"","last_name":"Jeff Morris, Senior Software Engineer, Couchbase","first_name":"Jeff","job_title":"","user_url":"","description":"Jeff Morris\ub294 Couchbase\uc758 \uc218\uc11d \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4\uc785\ub2c8\ub2e4. Couchbase\uc5d0 \uc785\uc0ac\ud558\uae30 \uc804\uc5d0\ub294 6\ub144 \ub3d9\uc548 Source Interlink\uc5d0\uc11c \uc5d4\ud130\ud504\ub77c\uc774\uc988 \uc6f9 \uc544\ud0a4\ud14d\ud2b8\ub85c \uadfc\ubb34\ud588\uc2b5\ub2c8\ub2e4. Jeff\ub294 Couchbase SDK \uac1c\ubc1c\uacfc N1QL(\ucffc\ub9ac \uc5b8\uc5b4)\uacfc \ud1b5\ud569\ud558\ub294 \ubc29\ubc95\uc744 \ub2f4\ub2f9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/1963","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/comments?post=1963"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/1963\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media?parent=1963"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/categories?post=1963"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/tags?post=1963"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/ppma_author?post=1963"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}