diff --git a/samples/features/sql-clr/Curl/Curl.cs b/samples/features/sql-clr/Curl/Curl.cs index 691bcc6e..989b780d 100644 --- a/samples/features/sql-clr/Curl/Curl.cs +++ b/samples/features/sql-clr/Curl/Curl.cs @@ -2,6 +2,7 @@ using Microsoft.SqlServer.Server; using System; using System.Data.SqlTypes; using System.Net; +using System.Threading; /// /// Provides CURL-like functionalities in T-SQL code. @@ -13,29 +14,19 @@ public partial class Curl public static SqlChars Get(SqlChars H, SqlChars url) { var client = new WebClient(); - if (!H.IsNull) - { - var header = H.ToSqlString().Value; - if (!string.IsNullOrWhiteSpace(header)) - client.Headers.Add(header); - } + AddHeader(H, client); return new SqlChars( client.DownloadString( Uri.EscapeUriString(url.ToSqlString().Value) - ).ToCharArray()); + ).ToCharArray()); } [SqlProcedure] public static void Post(SqlChars H, SqlChars d, SqlChars url) { var client = new WebClient(); - if (!H.IsNull) - { - var header = H.ToSqlString().Value; - if (!string.IsNullOrWhiteSpace(header)) - client.Headers.Add(header); - } - if(d.IsNull) + AddHeader(H, client); + if (d.IsNull) throw new ArgumentException("You must specify data that will be sent to the endpoint", "@d"); var response = client.UploadString( @@ -44,4 +35,47 @@ public partial class Curl ); SqlContext.Pipe.Send(response); } + + [SqlProcedure] + public static void PostWithRetry(SqlChars H, SqlChars d, SqlChars url) + { + var client = new WebClient(); + AddHeader(H, client); + if (d.IsNull) + throw new ArgumentException("You must specify data that will be sent to the endpoint", "@d"); + int i = RETRY_COUNT; + string response = ""; + do try + { + response = + client.UploadString( + Uri.EscapeUriString(url.ToSqlString().Value), + d.ToSqlString().Value + ); + i = -1; + break; + } + catch (Exception ex) + { + SqlContext.Pipe.Send("Error:\t" + ex.Message + ". Waiting " + DELAY_ON_ERROR + "ms."); + i--; + Thread.Sleep(DELAY_ON_ERROR); + } + while (i > 0); + if(i==-1) + SqlContext.Pipe.Send("Request is executed." + response); + } + + static readonly int RETRY_COUNT = 3; + static readonly int DELAY_ON_ERROR = 50; + + private static void AddHeader(SqlChars H, WebClient client) + { + if (!H.IsNull) + { + var header = H.ToSqlString().Value; + if (!string.IsNullOrWhiteSpace(header)) + client.Headers.Add(header); + } + } }; \ No newline at end of file diff --git a/samples/features/sql-clr/Curl/README.md b/samples/features/sql-clr/Curl/README.md index 3ec8ff0d..9c1c7a6f 100644 --- a/samples/features/sql-clr/Curl/README.md +++ b/samples/features/sql-clr/Curl/README.md @@ -68,14 +68,20 @@ GO ``` This code will import a assembly in SQL Database and add one function and one procedure that provide CURL functionalities. Two modules are provided in this sample: - - CURL.XGET - function that calls API on some http endpoint using `get` method, and fetches the response. It has two parameters: - - @H representing the header information that should be sent to remote endpoint (`null` for none). - - @url representing the Url endpoint where the Http request should be sent. - - CURL.XPOST - procedure that sends text to some http endpoint using `post` method and prints response. It has three parameters: - - @H representing the header information that should be sent to the remote endpoint (`null` for none). - - @d representing the data that should be sent to remote endpoint in the request body. - - @url representing the Url endpoint where the Http request should be sent. + - `CURL.XGET` - function that calls API on some http endpoint using `get` method, and fetches the response. It has two parameters: + - `@H` representing the header information that should be sent to remote endpoint (`null` for none). + - `@url` representing the Url endpoint where the Http request should be sent. + - `CURL.XPOST` - procedure that sends text to some http endpoint using `post` method and prints response. It has three parameters: + - `@H` representing the header information that should be sent to the remote endpoint (`null` for none). + - `@d` representing the data that should be sent to remote endpoint in the request body. + - `@url` representing the Url endpoint where the Http request should be sent. +In the assembly you can find an alternative version of Post procedure that will automatically retry Http request with 50ms delay if some error is returned by destination. +``` +CREATE PROCEDURE CURL.XPOST (@H NVARCHAR(MAX), @d NVARCHAR(MAX), @url NVARCHAR(4000)) +AS EXTERNAL NAME SqlClrCurl.Curl.PostWithRetry; +GO +``` ## Test the functions @@ -94,7 +100,7 @@ declare @endpoint nvarchar(1000) = N'https://test-event-grid.eventgrid.azure.net exec curl.XPOST @H = @hkey, @d = @body, @url = @endpoint; ``` -> **Note**: The code might return an error if your firewall/networking rules don't allow access to targetet Url. Security and configuring access right in your networks is beyond the scope of this sample. +> **Note**: The code might return an error if your firewall/networking rules don't allow access to targeted Url. Security and configuring access right in your networks is beyond the scope of this sample. @@ -115,7 +121,7 @@ EXEC sp_add_trusted_assembly 0xF1DCC19FDB930CC4E148A41A262F34532E021F8F4DB5782B4 GO CREATE ASSEMBLY [SqlClrCurl] -FROM 0x4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000800000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000504500004C0103006477D25A0000000000000000E00022200B013000000E000000060000000000006A2C000000200000004000000000001000200000000200000400000000000000060000000000000000800000000200000FC70000030060850000100000100000000010000010000000000000100000000000000000000000182C00004F00000000400000E403000000000000000000000000000000000000006000000C000000E02A00001C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000080000000000000000000000082000004800000000000000000000002E74657874000000700C000000200000000E000000020000000000000000000000000000200000602E72737263000000E4030000004000000004000000100000000000000000000000000000400000402E72656C6F6300000C00000000600000000200000014000000000000000000000000000040000042000000000000000000000000000000004C2C0000000000004800000002000500302100003009000009000000000000000000000000000000602A0000800000000000000000000000000000000000000000000000000000000000000000000000133002005500000001000011731200000A0A026F1300000A2D23026F1400000A0C1202281500000A0B07281600000A2D0C066F1700000A076F1800000A06036F1400000A0C1202281500000A281900000A6F1A00000A6F1B00000A731C00000A2A000000133003006500000002000011731200000A0A026F1300000A2D23026F1400000A0D1203281500000A0C08281600000A2D0C066F1700000A086F1800000A06046F1400000A0D1203281500000A281900000A036F1400000A0D1203281500000A6F1D00000A0B281E00000A076F1F00000A2A1E02282000000A2A00000042534A4201000100000000000C00000076342E302E33303331390000000005006C000000D4020000237E0000400300008C03000023537472696E677300000000CC0600000400000023555300D0060000100000002347554944000000E00600005002000023426C6F620000000000000002000001471502000900000000FA013300160000010000001B00000002000000030000000600000020000000110000000200000001000000030000000000500201000000000006005301F5020600D201F50206005C00C3020F0015030000060084007C02060036017C02060002017C020600B9017C02060073017C0206009E017C020600B1007C0206007000D60206004E00D6020600E5007C020600CC00FA0106004E0375020A002101A2020A008C01A2020A00390324030E00640359030A00420224030A009B00A2020600450275020E008E0259030E004C0275020A007303A2020A004600A20200000000010000000000010001000100100070020000410001000100502000000000960055030D010100B4200000000096006E03160104002521000000008618BD0206000700000000000000000001000A00000002007102000001000A000000020028000000030071020900BD0201001100BD0206001900BD020A002900BD0210003100BD0210003900BD0210004100BD0210004900BD0210005100BD0210005900BD0210006100BD0215006900BD0210007100BD0210007900BD0210008900BD0206009100BD020600B100BD020600A100BD02060099005F022200990040022600A900F0012B00B9002A002F00A10042033400C10021001000C90030023900A10014023E00B9007E0343009900BD024800A10023025700D1003D005D00D900250010008100BD02060020007B003802240083003D022E000B0020012E00130029012E001B0048012E00230051012E002B0061012E00330095012E003B0095012E00430051012E004B009B012E00530095012E005B0095012E006300B3012E006B00DD012E007300EA0140008B0038021A004E00048000000100000000000000010000006B006A020000040000000000000000000000620018000000000004000000000000000000000062000C000000000004000000000000000000000062007502000000000000003C4D6F64756C653E00480053797374656D2E44617461006D73636F726C6962004164640053656E640049734E756C6C4F7257686974655370616365006765745F506970650053716C5069706500477569644174747269627574650044656275676761626C6541747472696275746500436F6D56697369626C6541747472696275746500417373656D626C795469746C654174747269627574650053716C50726F63656475726541747472696275746500417373656D626C7954726164656D61726B417474726962757465005461726765744672616D65776F726B41747472696275746500417373656D626C7946696C6556657273696F6E41747472696275746500417373656D626C79436F6E66696775726174696F6E4174747269627574650053716C46756E6374696F6E41747472696275746500417373656D626C794465736372697074696F6E41747472696275746500436F6D70696C6174696F6E52656C61786174696F6E7341747472696275746500417373656D626C7950726F647563744174747269627574650053716C466163657441747472696275746500417373656D626C79436F7079726967687441747472696275746500417373656D626C79436F6D70616E794174747269627574650052756E74696D65436F6D7061746962696C697479417474726962757465006765745F56616C75650053797374656D2E52756E74696D652E56657273696F6E696E6700446F776E6C6F6164537472696E670055706C6F6164537472696E6700457363617065557269537472696E6700546F53716C537472696E67005572690053716C436C724375726C2E646C6C006765745F49734E756C6C0053716C436C724375726C0053797374656D0053797374656D2E5265666C656374696F6E00576562486561646572436F6C6C656374696F6E004D6963726F736F66742E53716C5365727665722E536572766572002E63746F720053797374656D2E446961676E6F73746963730053797374656D2E52756E74696D652E496E7465726F7053657276696365730053797374656D2E52756E74696D652E436F6D70696C6572536572766963657300446562756767696E674D6F6465730053797374656D2E446174612E53716C54797065730053716C4368617273006765745F48656164657273004F626A656374004765740053797374656D2E4E657400576562436C69656E7400506F73740053716C436F6E7465787400546F43686172417272617900000000000000C96C133A9E0FB0459BA00DB35693791E00042001010803200001052001011111042001010E042001010207070312510E11550320000204200011550320000E040001020E04200012610400010E0E0420010E0E0420001D03052001011D0308070412510E0E11550520020E0E0E040000126D08B77A5C561934E08980A00024000004800000940000000602000000240000525341310004000001000100594568514168B07173B4258E3B5DCAC316DAE3F3C0C01DDFDBC628534C3F8D1A4F378F74CDD858CDB90804D5A862842BC650F764CBD8EC01C5C69A9EC1BFA90012AC45AC19B8198569A6E06671977DE65FC6939CFC20366252416CFFEA1DEDBB035134658E4C113C92CBA6CB1D32233F033102809E95F0D16B0C1E25E0352CB6080002124D124D124D09000301124D124D124D0801000800000000001E01000100540216577261704E6F6E457863657074696F6E5468726F7773010801000200000000000F01000A53716C436C724375726C00003301002E496D706C656D656E746174696F6E206F66204355524C20636F6D6D616E6420696E2053514C204461746162617365000005010000000017010012436F7079726967687420C2A920203230313800002901002432363565306263332D616435662D343466332D626231372D63363166373762393834376600000C010007312E302E302E3000004D01001C2E4E45544672616D65776F726B2C56657273696F6E3D76342E362E310100540E144672616D65776F726B446973706C61794E616D65142E4E4554204672616D65776F726B20342E362E31040100000012010001005408074D617853697A65FFFFFFFFAE984FE7561B5B2C5B5EDFF51A4C24A230777ACEFC0484A0B1A3C8E335C2D88AC0E4D02349D31613A7A56459CB86A83D5307BD23C4C1F71A1387A456C0FBB168D4AB447A18CF7077182634BD2F3D0AACBD8324DE6A7190F2FC54A0696A3D1A4839EE2BE1E2A47619FE136216BE2E8B3B268A9A6584E9DA83E9BB4F820B401926000000006477D25A00000000020000001C010000FC2A0000FC0C000052534453275E3606551D694B84D7321583A41ADA01000000433A5C4769744875625C73716C2D7365727665722D73616D706C65735C73616D706C65735C66656174757265735C73716C2D636C725C4375726C5C6F626A5C52656C656173655C53716C436C724375726C2E70646200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000402C000000000000000000005A2C00000020000000000000000000000000000000000000000000004C2C0000000000000000000000005F436F72446C6C4D61696E006D73636F7265652E646C6C0000000000FF25002000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100100000001800008000000000000000000000000000000100010000003000008000000000000000000000000000000100000000004800000058400000880300000000000000000000880334000000560053005F00560045005200530049004F004E005F0049004E0046004F0000000000BD04EFFE00000100000001000000000000000100000000003F000000000000000400000002000000000000000000000000000000440000000100560061007200460069006C00650049006E0066006F00000000002400040000005400720061006E0073006C006100740069006F006E00000000000000B004E8020000010053007400720069006E006700460069006C00650049006E0066006F000000C4020000010030003000300030003000340062003000000076002F00010043006F006D006D0065006E0074007300000049006D0070006C0065006D0065006E0074006100740069006F006E0020006F00660020004300550052004C00200063006F006D006D0061006E006400200069006E002000530051004C002000440061007400610062006100730065000000000022000100010043006F006D00700061006E0079004E0061006D00650000000000000000003E000B000100460069006C0065004400650073006300720069007000740069006F006E0000000000530071006C0043006C0072004300750072006C0000000000300008000100460069006C006500560065007200730069006F006E000000000031002E0030002E0030002E00300000003E000F00010049006E007400650072006E0061006C004E0061006D0065000000530071006C0043006C0072004300750072006C002E0064006C006C00000000004800120001004C006500670061006C0043006F007000790072006900670068007400000043006F0070007900720069006700680074002000A90020002000320030003100380000002A00010001004C006500670061006C00540072006100640065006D00610072006B007300000000000000000046000F0001004F0072006900670069006E0061006C00460069006C0065006E0061006D0065000000530071006C0043006C0072004300750072006C002E0064006C006C000000000036000B000100500072006F0064007500630074004E0061006D00650000000000530071006C0043006C0072004300750072006C0000000000340008000100500072006F006400750063007400560065007200730069006F006E00000031002E0030002E0030002E003000000038000800010041007300730065006D0062006C0079002000560065007200730069006F006E00000031002E0030002E0030002E00300000000000000000000000000000000000000000000000000000000000000000000000002000000C0000006C3C00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +FROM 0x4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000800000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000504500004C010300EC00D75A0000000000000000E00022200B013000001000000008000000000000A22E00000020000000400000000000100020000000020000040000000000000006000000000000000080000000020000A4070100030060850000100000100000000010000010000000000000100000000000000000000000502E00004F000000004000002C04000000000000000000000000000000000000006000000C00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000080000000000000000000000082000004800000000000000000000002E74657874000000A80E0000002000000010000000020000000000000000000000000000200000602E727372630000002C040000004000000006000000120000000000000000000000000000400000402E72656C6F6300000C0000000060000000020000001800000000000000000000000000004000004200000000000000000000000000000000842E00000000000048000000020005003C220000940B000009000000000000000000000000000000D02D0000800000000000000000000000000000000000000000000000000000000000000000000000133002003100000001000011731200000A0A0206280400000606036F1300000A0B1201281400000A281500000A6F1600000A6F1700000A731800000A2A000000133003005900000002000011731200000A0A02062804000006036F1900000A2C1072010000707271000070731A00000A7A06046F1300000A0C1202281400000A281500000A036F1300000A0C1202281400000A6F1B00000A0B281C00000A076F1D00000A2A0000001B300500D500000003000011731200000A0A02062804000006036F1900000A2C1072010000707271000070731A00000A7A7E010000040B72770000700C0006046F1300000A0D1203281400000A281500000A036F1300000A0D1203281400000A6F1B00000A0C150BDE5D1304281C00000A1B8D1000000125167279000070A2251711046F1E00000AA225187289000070A225197E020000048C1D000001A2251A729F000070A2281F00000A6F1D00000A0717590B7E02000004282000000ADE0007163D76FFFFFF07153315281C00000A72A700007008282100000A6F1D00000A2A00000001100000000032002C5E005617000001133002002C00000004000011026F1900000A2D23026F1300000A0B1201281400000A0A06282200000A2D0C036F2300000A066F2400000A2A1E02282500000A2A3A1980010000041F3280020000042A0042534A4201000100000000000C00000076342E302E33303331390000000005006C0000006C030000237E0000D80300001404000023537472696E677300000000EC070000D400000023555300C0080000100000002347554944000000D0080000C402000023426C6F620000000000000002000001571502000900000000FA013300160000010000001F0000000200000002000000060000000B0000002500000012000000040000000100000003000000000095020100000000000600870163030600060263030600900031030F00830300000600B800C10206006A01C10206003601C1020600ED01C1020600A701C1020600D201C1020600E500C1020600A400440306008200440306001901C102060000013F020600C303BA020A00550109030A00C00109030A00A70392030E00D903CE030A00870292030A00CF0009030600EF02BA020E009102BA0206008A02BA020600E702BA020A00EF0309030A007A00090306000100BA02060042002E020E00D302CE03000000000700000000000100010001001000B50200004100010001003100210033013100120033015020000000009600CA03360101009020000000009600EA033F010400F82000000000960006043F010700EC21000000009100FF0249010A002422000000008618240306000C002C220000000091182A0351010C0000000000000000000100100000000200B60200000100100000000200500000000300B60200000100100000000200500000000300B60200000100100000000200E303090024030100110024030600190024030A00290024031000310024031000390024031000410024031000490024031000510024031000590024031000610024031500690024031000710024031000790024031000890024030600910024030600B10024030600A10024030600990085022100A90024022600C10075022A00A10059022F00C900FA0334009900240339009900A4024700D10024034B00A10068025100D90071005700E1004D001000B90065002600C900BC036700F100F9026D00C900BC037200C90052007E00A100B0038300F9004900100081002403060020007B00A90224008300AE022E000B0055012E0013005E012E001B007D012E00230086012E002B0096012E003300D8012E003B00DE012E004300ED012E004B000C022E005300D8012E005B00D8012E00630024022E006B004E022E0073005B0240008B00A90260008B00A9021A003F005C007800048000000100000000000000010000009100AF020000040000000000000000000000880039000000000004000000000000000000000088002D00000000000400000000000000000000008800BA0200000000000000496E743332003C4D6F64756C653E00480044454C41595F4F4E5F4552524F520052455452595F434F554E540053797374656D2E44617461006D73636F726C696200546872656164004164640053656E640049734E756C6C4F7257686974655370616365006765745F4D657373616765006765745F506970650053716C5069706500477569644174747269627574650044656275676761626C6541747472696275746500436F6D56697369626C6541747472696275746500417373656D626C795469746C654174747269627574650053716C50726F63656475726541747472696275746500417373656D626C7954726164656D61726B417474726962757465005461726765744672616D65776F726B41747472696275746500417373656D626C7946696C6556657273696F6E41747472696275746500417373656D626C79436F6E66696775726174696F6E4174747269627574650053716C46756E6374696F6E41747472696275746500417373656D626C794465736372697074696F6E41747472696275746500436F6D70696C6174696F6E52656C61786174696F6E7341747472696275746500417373656D626C7950726F647563744174747269627574650053716C466163657441747472696275746500417373656D626C79436F7079726967687441747472696275746500417373656D626C79436F6D70616E794174747269627574650052756E74696D65436F6D7061746962696C697479417474726962757465006765745F56616C75650053797374656D2E546872656164696E670053797374656D2E52756E74696D652E56657273696F6E696E6700446F776E6C6F6164537472696E670055706C6F6164537472696E6700457363617065557269537472696E6700546F53716C537472696E67005572690053716C436C724375726C2E646C6C006765745F49734E756C6C0053716C436C724375726C0053797374656D0053797374656D2E5265666C656374696F6E00576562486561646572436F6C6C656374696F6E00417267756D656E74457863657074696F6E00536C65657000416464486561646572004D6963726F736F66742E53716C5365727665722E536572766572002E63746F72002E6363746F720053797374656D2E446961676E6F73746963730053797374656D2E52756E74696D652E496E7465726F7053657276696365730053797374656D2E52756E74696D652E436F6D70696C6572536572766963657300446562756767696E674D6F6465730053797374656D2E446174612E53716C54797065730053716C4368617273006765745F4865616465727300436F6E636174004F626A656374004765740053797374656D2E4E657400576562436C69656E7400636C69656E7400506F73740053716C436F6E7465787400546F43686172417272617900506F737457697468526574727900006F59006F00750020006D007500730074002000730070006500630069006600790020006400610074006100200074006800610074002000770069006C006C002000620065002000730065006E007400200074006F002000740068006500200065006E00640070006F0069006E0074000005400064000001000F4500720072006F0072003A00090000152E002000570061006900740069006E006700200000076D0073002E00002952006500710075006500730074002000690073002000650078006500630075007400650064002E00000000009F088CE602116C4B9AFB3C66B9316AA600042001010803200001052001011111042001010E04200101020607021251115504200011550320000E0400010E0E0420010E0E0420001D03052001011D0307070312510E115503200002052002010E0E0520020E0E0E04000012710A07051251080E1155125D0500010E1D1C04000101080500020E0E0E0507020E1155040001020E042000127D08B77A5C561934E08980A00024000004800000940000000602000000240000525341310004000001000100594568514168B07173B4258E3B5DCAC316DAE3F3C0C01DDFDBC628534C3F8D1A4F378F74CDD858CDB90804D5A862842BC650F764CBD8EC01C5C69A9EC1BFA90012AC45AC19B8198569A6E06671977DE65FC6939CFC20366252416CFFEA1DEDBB035134658E4C113C92CBA6CB1D32233F033102809E95F0D16B0C1E25E0352CB6020608080002124D124D124D09000301124D124D124D07000201124D1251030000010801000800000000001E01000100540216577261704E6F6E457863657074696F6E5468726F7773010801000200000000000F01000A53716C436C724375726C00004101003C496D706C656D656E746174696F6E206F66204355524C20636F6D6D616E6420696E2053514C2053657276657220446174616261736520456E67696E6500000501000000000E0100094D6963726F736F667400001E01001953716C20536572766572204769744875622053616D706C6573000017010012436F7079726967687420C2A920203230313800002901002432363565306263332D616435662D343466332D626231372D63363166373762393834376600000C010007312E302E302E3000004D01001C2E4E45544672616D65776F726B2C56657273696F6E3D76342E362E310100540E144672616D65776F726B446973706C61794E616D65142E4E4554204672616D65776F726B20342E362E31040100000012010001005408074D617853697A65FFFFFFFF0000009C457A618573CCAC660627E47C26534BB113903CBEC1AD391C51EAA55E17EABF37ED70ED36FDCA7EE39D55444FC1ECCC786BAE407C3ACF30C58FA6A86B2E18B71111D83FDF02F9CC390ED5F1B07FBAEC032856C307B5F0322D911573B68E5A80057D40AECDC95C81298FB42F65FBC5B3D8FE237F67B6DB44C1B7B9D5180DDE8E782E00000000000000000000922E0000002000000000000000000000000000000000000000000000842E0000000000000000000000005F436F72446C6C4D61696E006D73636F7265652E646C6C0000000000FF2500200010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100100000001800008000000000000000000000000000000100010000003000008000000000000000000000000000000100000000004800000058400000D00300000000000000000000D00334000000560053005F00560045005200530049004F004E005F0049004E0046004F0000000000BD04EFFE00000100000001000000000000000100000000003F000000000000000400000002000000000000000000000000000000440000000100560061007200460069006C00650049006E0066006F00000000002400040000005400720061006E0073006C006100740069006F006E00000000000000B00430030000010053007400720069006E006700460069006C00650049006E0066006F0000000C030000010030003000300030003000340062003000000092003D00010043006F006D006D0065006E0074007300000049006D0070006C0065006D0065006E0074006100740069006F006E0020006F00660020004300550052004C00200063006F006D006D0061006E006400200069006E002000530051004C002000530065007200760065007200200044006100740061006200610073006500200045006E00670069006E0065000000000034000A00010043006F006D00700061006E0079004E0061006D006500000000004D006900630072006F0073006F006600740000003E000B000100460069006C0065004400650073006300720069007000740069006F006E0000000000530071006C0043006C0072004300750072006C0000000000300008000100460069006C006500560065007200730069006F006E000000000031002E0030002E0030002E00300000003E000F00010049006E007400650072006E0061006C004E0061006D0065000000530071006C0043006C0072004300750072006C002E0064006C006C00000000004800120001004C006500670061006C0043006F007000790072006900670068007400000043006F0070007900720069006700680074002000A90020002000320030003100380000002A00010001004C006500670061006C00540072006100640065006D00610072006B007300000000000000000046000F0001004F0072006900670069006E0061006C00460069006C0065006E0061006D0065000000530071006C0043006C0072004300750072006C002E0064006C006C000000000054001A000100500072006F0064007500630074004E0061006D00650000000000530071006C00200053006500720076006500720020004700690074004800750062002000530061006D0070006C00650073000000340008000100500072006F006400750063007400560065007200730069006F006E00000031002E0030002E0030002E003000000038000800010041007300730065006D0062006C0079002000560065007200730069006F006E00000031002E0030002E0030002E003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000C000000A43E00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 WITH PERMISSION_SET = EXTERNAL_ACCESS GO diff --git a/samples/features/sql-clr/Curl/SqlClrCurl.csproj b/samples/features/sql-clr/Curl/SqlClrCurl.csproj index 541d22d3..ff4eb6b8 100644 --- a/samples/features/sql-clr/Curl/SqlClrCurl.csproj +++ b/samples/features/sql-clr/Curl/SqlClrCurl.csproj @@ -22,7 +22,7 @@ 4 - pdbonly + none true bin\Release\ TRACE