Let's see:
Article I §8: "Congress shall have the power...To exercise exclusive Legislation in all Cases whatsoever, over such District (not exceeding ten Miles square) as may, by Cession of particular States, and the Acceptance of Congress, become the Seat of the Government of the United States..."
So, in plain English, Congress' right to pass laws governing DC is EXCLUSIVE (no other entity can do it) and covers ALL CASES WHATSOEVER (including rifle magazines).
The "law" Gregory violated is no law at all.
Annnnnd......Then?
The Congress does not excercise “Exclusive” Priori nor sola imprimatur in crafting laws, rules or code for the District of Columbia.
In fact, for the purpose of this discussion, the local council creates “Local Law”. That was granted and delegated some years ago by Congress.
The DC is managed as a Municipality and Gregory broke DC Municipality laws.
You can look that up just like you did your previous post.
Have a great day and a Happy New Year.