|
You are mistaken.
https://dotnetfiddle.net/IzJQpY[^]
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
Oh well .
My way is better anyways since you can constraint against multiple interfaces at the same time. You'd have to write a specific exception for each type if you did it your way.
|
|
|
|
|
Interesting, I can't reproduce your compile error in FrameWork 4.5.1. I note the apparently strange fact that you are not assigning the result of the call to 'GetModified to any variable, so the result goes into outer-space.
This works for me:
public static class Extensions
{
public static List<Foo> GetModified(this List<Foo> list)
{
if ((list == null) || (list.Count == 0)) return null;
return list.Where(r => r.GetThisFooDirty()).ToList();
}
}
public class Foo
{
public string Name { private set; get; }
private bool ThisFooIsDirty { set; get; }
public bool GetThisFooDirty() { return ThisFooIsDirty; }
public void SetThisFooDirty(bool dirtyness) { ThisFooIsDirty = dirtyness; }
public Foo(string fooName)
{
Name = fooName;
ThisFooIsDirty = false;
}
} Test:
List<Foo> fooList = new List<Foo>
{
new Foo("foo1"),
new Foo("Foo2"),
new Foo("Foo3")
};
fooList[1].SetThisFooDirty(true);
fooList[2].SetThisFooDirty(true);
var whoIsDirty = fooList.GetModified(); Now, I'm going to go wash my mouth out with soap.
«OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things. » Alan Kay's clarification on what he meant by the term "Object" in "Object-Oriented Programming."
modified 12-Dec-14 0:09am.
|
|
|
|
|
BillWoodruff wrote: I can't reproduce your compile error in FrameWork 4.5.1.
BillWoodruff wrote: This works for me: That's because from where you have written your "Test" code, the Extensions class is accessible (and so is the extension method).
Your time will come, if you let it be right.
|
|
|
|
|
That's certainly a logical hypothesis: to assume the problem is no-access because (probably) the NameSpace qualifier is missing, and the calling context did not 'import a valid reference that would allow the method to be used without full qualification.
It is true, though, that classes can be defined outside of any 'named NameSpace, and the compiler will stick them in the "global" default NameSpace, although I'd consider any code that used that as probably "smelling"
«OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things. » Alan Kay's clarification on what he meant by the term "Object" in "Object-Oriented Programming."
|
|
|
|
|
Hello all,
I have applied EF Code-First to Existing Database like this :
1- Created an ADO.NET Entity Data Model
2- Chose Code First from Database
All of the classes generated correctly, except there are a lot of [Key] tags before most of the properties. Should I remove them from unnecessary ones?
Another question is, how can I be sure that EF kept the one-to-many or many-to-many relationships? There is nothing like :
public virtual ICollection<Post> Posts { get; set; }
Thanks in advance.
|
|
|
|
|
|
HI,
I want to superimpose two picture boxes and make the top picture box image transparent.
Thanks in advance
|
|
|
|
|
What type of bitmap is in each of the two PictureBoxes: .png with transparency ? or ... ?
There are several ways you can approach this, and I suggest you start by reading/studying this CodeProject article: [^].
And, then, read the discussion here: [^].
If these references don't assist you to get what you want, then please post more details here, and describe what you've tried, and any error messages.
«OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things. » Alan Kay's clarification on what he meant by the term "Object" in "Object-Oriented Programming."
|
|
|
|
|
Looking for a simple example (with how to) for a USB plug in and unplug condition. I think I use VID PID?
|
|
|
|
|
For searching, use Google. It will point to this[^] article.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
I want to write the regular expression for the below condition.
1. Allow only A to Z, a to z but not I,O,X and also not 0 to 9
Means if string have a character from I,O,X or digit then it should return false.
Would anyone please help me how to do this?
|
|
|
|
|
Try:
[A-HJ-TP-WYZa-z]*
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
Thanks for the reply but unfortunately it is not working for the below mentioned string
1. "I"
2. "IO"
3. ABCIO
4. IABCOX
In these type of strings, the result should be FALSE but using this expression [A-HJ-TP-WYZa-z]* it is giving TRUE.
|
|
|
|
|
And exactly how did you use it?
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
I think anchoring the ends of the pattern that Griff gave will do what you want:
^[A-HJ-TP-WYZa-z]*$ This says that everything in the string must meet these conditions.
And if an empty string is not permitted, change the asterisk to plus:
^[A-HJ-TP-WYZa-z]+$
A positive attitude may not solve every problem, but it will annoy enough people to be worth the effort.
|
|
|
|
|
We both missed that the pattern itself was broken:
^[A-HJ-TP-WYZa-z]*$ should be:
^[A-HJ-NP-WYZa-z]*$
(The T should be N.)
A positive attitude may not solve every problem, but it will annoy enough people to be worth the effort.
|
|
|
|
|
See my reply to Griff's comment below.
(I should have replied here...)
A positive attitude may not solve every problem, but it will annoy enough people to be worth the effort.
|
|
|
|
|
I don't think there's "direct" way to do that unless you specify the characters in the expression.
Why not simply use [IOX0-9]+ and invert the match condition?
[EDIT]
Of course you will need to handle the case with the lower case characters - either with RegexOptions.IgnoreCase flag or by specifying appropriate characters in the expression itself.
[/EDIT]
Your time will come, if you let it be right.
modified 11-Dec-14 3:46am.
|
|
|
|
|
The anchored expression I gave yesterday (the fixed one with N for T...) works when I test it in Expresso.
It matches only A-Z (except IOX), any lowercase a-z, no digits.
If punctuation is to be allowed, then the negated character class construct would work:
^[^IOX0-9]+$ will fail any string that contains uppercase I,O,X or any digit. Anything else would be allowed.
A positive attitude may not solve every problem, but it will annoy enough people to be worth the effort.
|
|
|
|
|
Agent__007 wrote: and invert the match condition?
Of course that would allow "A&A" which doesn't fit the requirements.
|
|
|
|
|
I am new to programming in general and i am working on a creating a macro for Revit 2015. I was able to create the following coding that builds a solution correctly without any errors in Sharpdevelop, but when i run the macro within Revit i get an error. Any help or incite would be greatly appreciated.
Thanks
public void Ranking()
{
Document doc = this.Document;
FilteredElementCollector collector = new FilteredElementCollector(doc).OfClass(typeof(ViewSheet));
using(Transaction trans = new Transaction(doc, "DrawinglistRank"))
{
trans.Start();
int sheetRank = 1;
foreach (Element Sheet in collector){
Parameter paramDisc = Sheet.LookupParameter("SHEET DISCIPLINE");
string sheetDiscipline = paramDisc.AsString();
sheetRank+=1;
if(sheetDiscipline == "GENERAL"){
sheetRank=1;
}else if(sheetDiscipline == "ARCHITECTURAL"){
sheetRank=2;
}else if(sheetDiscipline == "MECHANICAL"){
sheetRank=3;
}else if(sheetDiscipline == "ELECTRICAL"){
sheetRank=4;
}else if(sheetDiscipline == "PLUMBING"){
sheetRank=5;
}else if(sheetDiscipline == "FIREPROTECTION"){
sheetRank=6;}
Parameter paramRank = Sheet.LookupParameter("DISCIPLINE_RANK");
paramRank.Set(sheetRank);
trans.Commit();
}
TaskDialog.Show("Drawing List", "Drawing List Has Been Updated");
}
}
|
|
|
|
|
How do you think we can imagine what the error in "Revit" might be ?
I wonder why you aren't asking the question here: [^].
«OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things. » Alan Kay's clarification on what he meant by the term "Object" in "Object-Oriented Programming."
|
|
|
|
|
William Wydock wrote: I am new to programming in general Then you have chosen a nice complex way to learn.
There'll be an exception, at which point Revit gives a general message. Add a try-catch and log the entire exception (write ex.ToString() to file)
It might be that the document is not set correctly (could be null), that the parameter doesn't exist, or something else. Logging the exception will tell you what went wrong, and where.
Alternatively, you can debug by attaching the IDE to the Revit-process.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
static void Main(string[] args)
{
basictest();
}
//Nested dictionary problem
public static Dictionary<int, Dictionary<DateTime, String>> nestedict5 = new Dictionary<int, Dictionary<DateTime, string>>();
public static void basictest() {
int mk = 7001, nk = 7000; // just select 2 int values one odd(7001) and even(7000) for outer dictionary
DateTime ddn = DateTime.Now; // loop working with Datetime.Now for inner dictionay
Dictionary<DateTime, string> cd = new Dictionary<DateTime, string>();
nestedict5.Add(mk, cd); nestedict5.Add(nk, cd); //adding a new odd and even dictionary to outer dictionary
for (int i = 0; i < 12; i++)
{
ddn = ddn.AddMinutes(1); // adding a minute to time
if (ddn.Minute % 2 != 0) // if minute is odd
{
if (!(nestedict5[mk]).ContainsKey(ddn)) //check if outer dictionary odd key contains this odd minute value
{
(nestedict5[mk]).Add(ddn, "odd"); // add odd string to inner with key of datetime,Minute odd
printvalues(mk); // check results of odd keys in debug windows
}
}
else if (ddn.Minute % 2 == 0) // if ninute is even
{
if (!(nestedict5[nk]).ContainsKey(ddn)) //check if even outer dictionay key contains this even minute value
{
(nestedict5[nk]).Add(ddn, "even"); // add even string to inner with key of Minute even
printvalues(nk); // check results of even keys in debug windows
}
}
}
}
// loop to print odd and even key values in debug window
public static void printvalues(int k)
{
var cc = (nestedict5[k]).Values.ToArray();
var ck = (nestedict5[k]).Keys.ToArray();
for (int i = 0; i < cc.Count(); i++)
{
DateTime dt = ck[i];
String dcandle = cc[i];
Debug.WriteLine(string.Format("pids1:{0},Count{1}, datetime:{2}: ticks:{3}", k * 100 + i, cc.Count(), ck[i], cc[i]));
}
}
Question is at the end of the loop i shall get 6 members in both odd and even minute
whereas due to some error i am getting 12 members in all/both odd and even key outer dictionary help
Here is output in debug windows
pids1:700100,Count1, datetime:12/10/2014 6:39:07 AM: ticks:odd ok
even key results:
pids1:700000,Count2, datetime:12/10/2014 6:39:07 AM: ticks:odd not ok
pids1:700001,Count2, datetime:12/10/2014 6:40:07 AM: ticks:even ok
odd key results:
pids1:700100,Count3, datetime:12/10/2014 6:39:07 AM: ticks:odd ok
pids1:700101,Count3, datetime:12/10/2014 6:40:07 AM: ticks:even not ok
pids1:700102,Count3, datetime:12/10/2014 6:41:07 AM: ticks:odd ok
The problem continue's so on till all loops as odd and even keys appear in both key values!?? which is not desired and only odd key should have odd values and even key even values
pids1:700000,Count4, datetime:12/10/2014 6:39:07 AM: ticks:odd
pids1:700001,Count4, datetime:12/10/2014 6:40:07 AM: ticks:even
pids1:700002,Count4, datetime:12/10/2014 6:41:07 AM: ticks:odd
pids1:700003,Count4, datetime:12/10/2014 6:42:07 AM: ticks:even
-- modified 9-Dec-14 21:13pm.
|
|
|
|
|