C# LINQ In Clause

In Clause in LINQ can seem a bit tricky when you first write one. These two Northwind Traders SQL examples of a LINQ In Clause includes using a list as the in clause, and using a query as the in clause.

//--------------------------------------------------------------------------------    
//1. In Clausing using a LIST
//--------------------------------------------------------------------------------
List<decimal> OrderList = new List<decimal>();    
OrderList.Add(10248);
OrderList.Add(10250);
var OrderListArr = OrderList.ToArray();

var CustOrders = from o in Orders
                 where OrderListArr.Contains(o.OrderID)
                 select o;
    
CustOrders.Dump();

//--------------------------------------------------------------------------------
//2. In Clause using a LINQ statement. Get Customer Orders from Brazil customers
//--------------------------------------------------------------------------------
var BrazilOrders = from o in Orders
                   where (from c in Customers
                         where c.Country.Contains("Brazil")
                         select c.CustomerID).Contains(o.CustomerID)
                   select o;
BrazilOrders.Dump();           

Screen Shot from LINQPad for the two queries above.

Phonegap Cordova installation windows

The information below was taking from a StackOverflow Post at this link.

Follow these steps

  1. Download and Install node.js from http://nodejs.org/
  2. Run the command npm install -g phonegap (in case of phonegap installation) or run the command npm install -g cordova (in case of Cordova installation).
  3. As the installation gets completed you can notice this:

    C:\Users\binaryuser\AppData\Roaming\npm\cordova -> C:\Users\binaryuser\AppData\Roaming\npm\node_modules\cordova\bin\cordova
    cordova@3.0.9 C:\Users\binaryuser\AppData\Roaming\npm\node_modules\cordova
    ├── ncallbacks@1.0.0
    ├── open@0.0.3
    ├── colors@0.6.2
    ├── semver@1.1.0
    ├── shelljs@0.1.2
    ├── follow-redirects@0.0.3 (underscore@1.5.2)
    ├── elementtree@0.1.3 (sax@0.3.5)
    ├── optimist@0.6.0 (wordwrap@0.0.2, minimist@0.0.2)
    ├── xcode@0.5.1 (node-uuid@1.3.3, pegjs@0.6.2)
    ├── glob@3.2.6 (inherits@2.0.1, minimatch@0.2.12)
    ├── plist@0.4.3 (xmlbuilder@0.4.2, xmldom@0.1.16)
    ├── tar@0.1.18 (inherits@2.0.1, block-stream@0.0.7, fstream@0.1.24)
    ├── prompt@0.2.7 (revalidator@0.1.5, pkginfo@0.3.0, read@1.0.5, utile@0.1.7, winston@0.6.2)
    ├── request@2.22.0 (json-stringify-safe@4.0.0, aws-sign@0.3.0, qs@0.6.5, oauth-sign@0.3.0, forever-agent@0.5.0, cookie-jar@0.3.0, tunnel-agent@0.3.0, mime@1.2.11, node-uuid@1.4.1, http-signature@0.10.0, hawk@0.13.1, form-data@0.0.8)
    ├── express@3.0.0 (methods@0.0.1, fresh@0.1.0, range-parser@0.0.4, crc@0.2.0, cookie@0.0.4, commander@0.6.1, debug@0.7.2, mkdirp@0.3.3, send@0.1.0, connect@2.6.0)
    ├── ripple-emulator@0.9.18 (connect-xcors@0.5.2, colors@0.6.0-1, accounting@0.3.2, request@2.12.0, moment@1.7.2, express@3.1.0)
    ├── npm@1.3.11
    └── plugman@0.11.0 (ncallbacks@1.1.0, osenv@0.0.3, bplist-parser@0.0.4, underscore@1.4.4, semver@2.0.11, dep-graph@1.1.0, elementtree@0.1.5, xcode@0.6.1, nopt@1.0.10, rc@0.3.0, tar.gz@0.1.1, npm@1.3.4)
    
  4. Notice the above line you can see the path were the file is mentioned. Copy that path. In my case it is C:\Users\binaryuser\AppData\Roaming\npm\cordova so use cd C:\Users\binaryuser\AppData\Roaming\npm\ and type cordova. There it is, it finally works.

  5. Since the -g key value isn't working you have set the Environment Variables path:
    1. Press Win + Pause|Break or right click on Computer and choose Properties.
    2. Click Advanced system settings on the left.
    3. Click Environment Variables under the Advanced tab.
    4. Select the PATH variable and click Edit.
    5. Copy the path mentioned above to the value field and press OK.

Write Oracle Loop in a Script File

Typically any code I write in Oracle it is most often in a procedure or function in a package. At times a stand alone procedure.

The coding performed in an Oracle Procedure can be done in a script file but since I do not do that often I created this post for a copy-paste sample that can be run as a script.
--Declare the VARS outside the begin
declare 
ln_count number;

begin -- Start of Coding

for i in (select constraint_name
          from all_constraints
          where constraint_type = 'R'
          and owner = 'MDSYS'
          and status = 'ENABLED') 
  LOOP
    
  dbms_output.put_line('constraint_name' || i.constraint_name);
  
end loop;

end; -- End Coding

Here is the DBMS Output from the query code above.