You can pass in a row filter to the DataView constructor, but it has to be a string using the Expression Syntax[^]; you can't pass in a custom delegate.
The BindingSource has a Filter property[^], but again it's a string using the same syntax.
In WPF, you can supply a filter delegate to the ICollectionView. But that's not much help if you're using Windows Forms.
You could obviously select the filtered rows using LINQ, and even use the CopyToDataTable extension method to create a new DataTable from the filtered rows. But then you'd have to change the data source every time the filter changed, and you'd lose the connection to the original rows.
I don't think there's a good answer for this.
"These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer
I want to display a number of files (=the path and file name) in a table (DataGridView or similar). However, I do not have all the files in a single List (or array), instead I have a List of ParentClass objects that each contains a list of ChildClass objects and then finally each ChildClass object contains a List of files. Can I show these files in a table, preferrably using BindingSource, or it is impossible since not all the files are not in a single List?
It's not impossible, but a single control only has one BindingSource, so you can't just "set it and go" - you will have to create your table manually, and add each row yourself. You can then use the table as a BindingSource to display it all together.
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
AntiTwitter: @DalekDave is now a follower!
What are the benefits of using BindingSource to display the data? Would it, for example, enable me to use the filter functionality of BindingSource? Does this approach mean I basically first construct an array with all the files and then bind that array to the table? If so, how can I go from a cell (row number and column number) to the parent and child objects?
I plan so show more in the table than just the file name and path, I just simplified the scenario to cut to the core of the problem. So, I don't think I can solely use a tree, I haven't seen one that supports several columns. I think the best approach would be a blend of a table and a tree, so that I could by default collapse rows that don't require immediate attention of the user.
public string myString;
Further, let's assume I have a List of this class:
public List<MyClass> myList;
I would like to display all the myString and myInt in a DataGridView with 2 columns, but I would also like to implement a filter that would restrict what would be shown in the DataGridView. For example, one filter would be to only show myInt values between 0 and 5, but please note that I don't what to alter the List itself, it contains "master data" that should never be thrown out or modified. What would be the best approach to achieve this? I would prefer to do this in .NET 2.0, unless there are major reasons to switching to something newer.
Im trying to consume this WS and response NULL. I dont know why because when I test it in boomerang tool work good. Please if someone can help me
The method dont receive parameters and return a string.
public class FacturaRepository : IFacturaRepository
public string GetSeedSII()
CrSeedClient seedClient = new CrSeedClient();
s2 = seedClient.getSeed(); //RETURN NULL I DONT KNOW WHY
getSeed requires a parameter of type getSeedRequest, and returns a getSeedResponse object.
Testing this in a console app:
CrSeedClient client = new CrSeedClient();
getSeedRequest req = new getSeedRequest();
getSeedResponse resp = client.getSeed(req);
runs OK but still returns null in resp. If I omit the getSeedRequest parameter it won't compile.
However, if I run the above code with Fiddler listening in, then I can see the response received does actually contain XML, and is not null. Not entirely sure what's happening here but I suspect there's no implementation of getSeedRequest.ToString() so it returns nothing. As a workaround, the following seems to work fine:
staticvoid Main(string args)
WebRequest webreq = WebRequest.Create("https://palena.sii.cl/DTEWS/CrSeed.jws?WSDL");
webreq.Method = "POST";
byte bData = Encoding.ASCII.GetBytes("<s:Envelope xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\"><s:Body s:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"><q1:getSeed xmlns:q1=\"http://DefaultNamespace\"/></s:Body></s:Envelope>");
webreq.GetRequestStream().Write(bData, 0, bData.Length);
WebResponse webresp = webreq.GetResponse();
XmlDocument doc = new XmlDocument();
Suppose your API takes a ID and then it returns a JSON response with that the ID in it.
Ex: Get: http:/example.com/id="12345";
Is it possible to validate 100s of different APIs and their responses if they all contain the same parameter and its value you passed in the response, this could be any datatype and any attribute and check if response contains that. but they all are different.. and make it generic??
Those "100s of APIs", are they developed in-house? Do you have access to their source code?
Could you give us a clue to why and how the solution you are searching should be applied to literally hundreds of APIs - are you (or your employer) actually developing (implementations for) hundreds of APIs that should use the same validation?
In these hundreds of APIs, could you give some hint to what kind of datatypes and attributes you will find?
Would it be an option to return to your superior and say: "I am convinced that it is a poor idea to make one super-general validation function for every possible data type and attribute in several hundred APIs. I suggest that we don't do that!" ?
... Noone here believes that your problem statement comes from a real-world software developments project. It shines bright and clear that this is an exercize given at a college or other educational institution.
So be honest with it: The professor has given us this assignment, and I here is what I have written to return the attribute name ("id") and value ("12345"): [...]. But he wants it to valid for "any datatype" - I don't understand what he means typ that; it comes as a string from the URL. How can it come as some other datatype?"
That would be a valid question that might generate responses. But the way you have presented it, it sounds more like: "I am too busy to do this homework assignment right now, so could someone please provide something for me to hand in?"
If you really are as totally blank as it seems, tell us. Indicate whichever pieces you have understood, if ever so small, and we could try to work it out from there. But be warned that you can only expect to get help to understand things enough to do the homework yourself. You won't get help so that you don't have to do it yourself.